This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFA 5/7 take 3] Improved linker-debugger interface


Pedro Alves wrote:
> On 05/24/2013 09:30 AM, Gary Benson wrote:
> > +  for (tail = info->solib_list; tail->next; tail = tail->next)
> 
> tail->next != NULL
> 
> > +  for (loc = b->loc; loc; loc = loc->next)
> 
> loc != NULL.
> 
> > +	      if (!strcmp (name,"rtld_map_failed"))
> 
> strcmp (name,"rtld_map_failed") == 0
> 
> There may be other instances in your patches.  It'd be nice to
> have them fixed.

I had a look this morning, but I think you caught them all :)

> > +static int
> > +svr4_update_solib_event_breakpoint (struct breakpoint *b, void *arg)
> > +{
> > +  struct svr4_info *info = get_svr4_info ();
> > +  struct bp_location *loc;
> > +
> ...
> 
> > +  for (loc = b->loc; loc; loc = loc->next)
> > +    {
> > +      struct probe_and_action *pa = solib_event_probe_at (info, loc->address);
> 
> There's no relation between INFO and the locations' inferior/program
> space.  IOW, I believe this is doing the wrong thing for multi-process.

It took me a while to figure out what you meant here, but I think I
see what you mean.  I've attached an updated patch with this function
reworked.  Could you let me know if it looks correct?

Thanks,
Gary

-- 
http://gbenson.net/

Attachment: rtld-probes-5-main-changes.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]