This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA 5/7 take 2] Improved linker-debugger interface
- From: Pedro Alves <palves at redhat dot com>
- To: Jan Kratochvil <jan dot kratochvil at redhat dot com>, gdb-patches at sourceware dot org
- Date: Wed, 29 May 2013 19:51:16 +0100
- Subject: Re: [RFA 5/7 take 2] Improved linker-debugger interface
- References: <20130516144340 dot GA2105 at blade dot nx> <20130516144838 dot GF2105 at blade dot nx> <20130517185002 dot GA10447 at host2 dot jankratochvil dot net> <20130524083044 dot GC4602 at blade dot nx>
On 05/24/2013 09:30 AM, Gary Benson wrote:
> +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.
> + 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.
Otherwise, looks about ready to me too (with Jan's comments
addressed).
--
Pedro Alves