This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PING][RFA-v2] Fix troubles with watchpoints in DJGPP
- From: "Pierre Muller" <muller at ics dot u-strasbg dot fr>
- To: "'Pierre Muller'" <muller at ics dot u-strasbg dot fr>, "'Pedro Alves'" <pedro at codesourcery dot com>, <gdb-patches at sourceware dot org>
- Cc: "'Eli Zaretskii'" <eliz at gnu dot org>
- Date: Wed, 17 Jun 2009 00:37:38 +0200
- Subject: [PING][RFA-v2] Fix troubles with watchpoints in DJGPP
- References: <001401c9de9f$928b9f80$b7a2de80$@u-strasbg.fr> <200905280030.28382.pedro@codesourcery.com> <006f01c9e854$7295da10$57c18e30$@u-strasbg.fr>
No one reacted to this second version of my patch...
I still have other hardware watchpoint related problems
that need to be discussed, but this one is really a small patch,
no ?
Pierre
> -----Message d'origine-----
> De?: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Pierre Muller
> Envoyé?: Monday, June 08, 2009 6:16 PM
> À?: 'Pedro Alves'; gdb-patches@sourceware.org
> Cc?: 'Eli Zaretskii'
> Objet?: [RFA-v2] Fix troubles with watchpoints in DJGPP
>
>
>
> > -----Message d'origine-----
> > De?: gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> > owner@sourceware.org] De la part de Pedro Alves
> > Envoyé?: Thursday, May 28, 2009 1:30 AM
> > À?: gdb-patches@sourceware.org
> > Cc?: Pierre Muller (IMAP); 'Eli Zaretskii'
> > Objet?: Re: [RFA] Fix troubles with watchpoints in DJGPP
> >
> > On Wednesday 27 May 2009 08:48:49, Pierre Muller (IMAP) wrote:
> >
> > > PS-1) Are there not other native targets, without
> > > dynamic libraries, that will suffer the same troubles?
> >
> > I think so. I've just tried on x86_64-linux, with a statically
> > linked binary (I used gdb.threads/staticthreads, set a watchpoint
> > on semaphore), and although there are no shared libraries loaded,
> > the problem is masked by adding the symbols of the vsyscall page
> > (sysfile-mem.c:add_vsyscall_page). If I hack that function to
> > do nothing, I see that same thing you're seeing on djgpp.
> >
> > Maybe there's a place for a generic fix? Somewhere after
> > having opened a connection to the target interface. I was
> > thinking of post_create_inferior, but sounds like opening
> > a connection to a remote target with "target remote" that
> > happens to not pull in any more symbols (like most embedded
> > targets) is having the same problem? Maybe there should be
> > a target_post_open ...
>
> I submit here a more general fix
> that calls breakpoint_re_set function
> after the target is pushed in post_create_inferior.
>
> This patch works for go32 target, but
> should work for all other native targets that
> have no dynamic libraries too.
>
> Is this OK?
>
> Pierre
>
> 2009-06-08 Pierre Muller <muller@ics.u-strasbg.fr>
>
> * infcmd.c (post_create_inferior): Call breakpoint_re_set after
> target
> is pushed for watchpoint promotion to hardware watchpoint.
>
> Index: src/gdb/infcmd.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/infcmd.c,v
> retrieving revision 1.245
> diff -u -p -r1.245 infcmd.c
> --- src/gdb/infcmd.c 7 Jun 2009 16:46:48 -0000 1.245
> +++ src/gdb/infcmd.c 8 Jun 2009 07:29:43 -0000
> @@ -421,6 +421,9 @@ post_create_inferior (struct target_ops
> #endif
> }
>
> + /* Call breakpoint_re_set to update watchpoints types. */
> + breakpoint_re_set ();
> +
> observer_notify_inferior_created (target, from_tty);
> }
>