From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24048 invoked by alias); 21 May 2011 22:20:56 -0000 Received: (qmail 24040 invoked by uid 22791); 21 May 2011 22:20:54 -0000 X-SWARE-Spam-Status: No, hits=0.3 required=5.0 tests=AWL,BAYES_50,MIME_QP_LONG_LINE,RCVD_IN_DNSWL_NONE X-Spam-Check-By: sourceware.org Received: from mailrelay001.isp.belgacom.be (HELO mailrelay001.isp.belgacom.be) (195.238.6.51) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 21 May 2011 22:20:37 +0000 X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Av8EAPM52E1tgI/w/2dsb2JhbACKK5saWnmIaQe6QQ6GCwSfCA Received: from 240.143-128-109.adsl-dyn.isp.belgacom.be (HELO soleil) ([109.128.143.240]) by relay.skynet.be with SMTP; 22 May 2011 00:20:35 +0200 Message-ID: From: "Philippe Waroquiers" To: Cc: "Philippe Waroquiers" Subject: ping: Re: PATCH : allow to set length of hw watchpoints (e.g. for Valgrind gdbserver) Date: Sat, 21 May 2011 22:20:00 -0000 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0018_01CC1816.12870F10" Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-05/txt/msg00505.txt.bz2 This is a multi-part message in MIME format. ------=_NextPart_000_0018_01CC1816.12870F10 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response Content-Transfer-Encoding: 7bit Content-length: 368 >> These are fine, but please leave 2 spaces between sentences in the >> NEWS entry. > I assume there will be some other comments (maybe related to ssize_t). > I will update NEWS together with handling the other comments. There was no other comments, so attached a new version of the patch, only difference is 2 spaces in sentences in NEWS entry. Thanks Philippe ------=_NextPart_000_0018_01CC1816.12870F10 Content-Type: text/plain; format=flowed; name="set-length-limit-4.txt"; reply-type=response Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="set-length-limit-4.txt" Content-length: 5194 Index: gdb/NEWS =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/NEWS,v retrieving revision 1.441 diff -c -p -r1.441 NEWS *** gdb/NEWS 13 May 2011 22:36:06 -0000 1.441 --- gdb/NEWS 21 May 2011 19:48:36 -0000 *************** *** 3,8 **** --- 3,18 ---- =20=20 *** Changes since GDB 7.3 =20=20 + * GDB has two new commands: "set remote hardware-watchpoint-length-limit" + and "show remote hardware-watchpoint-length-limit". These allows to + set or show the maximum length limit (in bytes) of a remote + target hardware watchpoint. +=20 + This allows e.g. to use "unlimited" hardware watchpoints with the + gdbserver integrated in Valgrind version >=3D 3.7.0. Such Valgrind + watchpoints are slower than real hardware watchpoints but are + significantly faster than gdb software watchpoints. +=20 * libthread-db-search-path now supports two special values: $sdir and $pd= ir. $sdir specifies the default system locations of shared libraries. $pdir specifies the directory where the libpthread used by the applicat= ion Index: gdb/remote.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/remote.c,v retrieving revision 1.446 diff -c -p -r1.446 remote.c *** gdb/remote.c 12 May 2011 12:09:16 -0000 1.446 --- gdb/remote.c 21 May 2011 19:48:42 -0000 *************** remote_remove_watchpoint (CORE_ADDR addr *** 7756,7764 **** --- 7756,7778 ---- =20=20 =20=20 int remote_hw_watchpoint_limit =3D -1; + int remote_hw_watchpoint_length_limit =3D -1; int remote_hw_breakpoint_limit =3D -1; =20=20 static int + remote_region_ok_for_hw_watchpoint (CORE_ADDR addr, int len) + { + if (remote_hw_watchpoint_length_limit =3D=3D 0) + return 0; + else if (remote_hw_watchpoint_length_limit < 0) + return 1; + else if (len <=3D remote_hw_watchpoint_length_limit) + return 1; + else + return 0; + } +=20 + static int remote_check_watch_resources (int type, int cnt, int ot) { if (type =3D=3D bp_hardware_breakpoint) *************** Specify the serial device it is connecte *** 10326,10331 **** --- 10340,10347 ---- remote_ops.to_can_use_hw_breakpoint =3D remote_check_watch_resources; remote_ops.to_insert_hw_breakpoint =3D remote_insert_hw_breakpoint; remote_ops.to_remove_hw_breakpoint =3D remote_remove_hw_breakpoint; + remote_ops.to_region_ok_for_hw_watchpoint + =3D remote_region_ok_for_hw_watchpoint; remote_ops.to_insert_watchpoint =3D remote_insert_watchpoint; remote_ops.to_remove_watchpoint =3D remote_remove_watchpoint; remote_ops.to_kill =3D remote_kill; *************** Specify a negative limit for unlimited." *** 10735,10740 **** --- 10751,10765 ---- number of target hardware watchpoints is %s. */ &remote_set_cmdlist, &remote_show_cmdlist); + add_setshow_zinteger_cmd ("hardware-watchpoint-length-limit", no_class, + &remote_hw_watchpoint_length_limit, _("\ + Set the maximum length (in bytes) of a target hardware watchpoint."), _("\ + Show the maximum length (in bytes) of a target hardware watchpoint."), _(= "\ + Specify a negative limit for unlimited."), + NULL, NULL, /* FIXME: i18n: The maximum + length (in bytes) of a target + hardware watchpoint is %s. */ + &remote_set_cmdlist, &remote_show_cmdlist); add_setshow_zinteger_cmd ("hardware-breakpoint-limit", no_class, &remote_hw_breakpoint_limit, _("\ Set the maximum number of target hardware breakpoints."), _("\ Index: gdb/doc/gdb.texinfo =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v retrieving revision 1.838 diff -c -p -r1.838 gdb.texinfo *** gdb/doc/gdb.texinfo 13 May 2011 22:36:07 -0000 1.838 --- gdb/doc/gdb.texinfo 21 May 2011 19:49:12 -0000 *************** responses. *** 16578,16583 **** --- 16578,16595 ---- Restrict @value{GDBN} to using @var{limit} remote hardware breakpoint or watchpoints. A limit of -1, the default, is treated as unlimited. =20=20 + @cindex limit hardware watchpoints length + @cindex remote target, limit watchpoints length + @anchor{set remote hardware-watchpoint-length-limit} + @item set remote hardware-watchpoint-length-limit @var{limit} + Restrict @value{GDBN} to using @var{limit} bytes for the maximum length of + a remote hardware watchpoint. A limit of -1, the default, is treated + as unlimited. +=20 + @item show remote hardware-watchpoint-length-limit + Show the current limit (in bytes) of the maximum length of + a remote hardware watchpoint. +=20 @item set remote exec-file @var{filename} @itemx show remote exec-file @anchor{set remote exec-file} ------=_NextPart_000_0018_01CC1816.12870F10--