public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
From: Pedro Alves <pedro@palves.net>
To: "Metzger, Markus T" <markus.t.metzger@intel.com>
Cc: "gdb-patches@sourceware.org" <gdb-patches@sourceware.org>
Subject: Re: [PATCH v4] gdb, gdbserver: support dlmopen()
Date: Wed, 9 Mar 2022 14:15:15 +0000	[thread overview]
Message-ID: <9e7f445c-67cc-ebc1-566b-529c6dc8924b@palves.net> (raw)
In-Reply-To: <DM8PR11MB5749389F620BF53A563CCF5CDE0A9@DM8PR11MB5749.namprd11.prod.outlook.com>


On 2022-03-09 12:24, Metzger, Markus T wrote:
> Hello Pedro,
> 
>> Should the commit have a Co-Authored-By: tag for H.J.?
> 
> Definitely.  I didn't know we were using such tags.
> 
> 
>> I'm wondering whether ideally symbol lookup would be updated to handle
>> different namespaces.  I'm thinking of for example
>> svr4_iterate_over_objfiles_in_search_order.
> 
> Do you mean that we should restrict the search to the namespace of the
> current_objfile argument?  And use, say, the default namespace if that is nullptr?

Something like that.  I mean, doesn't the dynamic loader restrict resolving symbols to
the same namespace (and then the global namespace, I guess)?  Not sure about completely restricting to
the namespace is what users would want, but at least I'd think we should search symbols in the current
namespace first before searching the global namespace and then other namespaces (*).  The idea being that
evaluating an expression in GDB should yield the same result the same expression would yield if coded
in the program.

(*) Similar to how we search symbols in scope, and can still print static globals of other
files even if they're not in scope.

It's just a question at this point, I haven't thought about actual use cases, but I think
it's worth it to ponder about it.

Pedro Alves

> 
> 
>> Can you describe what xml changes were necessary?  Do we need to update
>> the manual where the xml/packet are described?
> 
> This patch doesn't change the XML so everything ends up in a flat list and GDB
> doesn't really know about namespaces.  This prevents incremental updates
> and would also prevent things like the above.
> 
> I had planned to leave support for that for backwards compatibility and update
> the XML to pass namespaces for future versions.  See also
> https://sourceware.org/pipermail/gdb-patches/2022-February/186135.html.
> 
> If we need GDB to know about namespaces, however, this wouldn't work and
> we'd instead need to conditionalize namespace support based on gdbserver
> features.
> 

  reply	other threads:[~2022-03-09 14:15 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-17 14:28 Markus Metzger
2022-01-21 11:42 ` Metzger, Markus T
2022-03-01 19:10 ` Tom Tromey
2022-03-09 12:23   ` Metzger, Markus T
2022-03-03 18:32 ` Pedro Alves
2022-03-09 12:24   ` Metzger, Markus T
2022-03-09 14:15     ` Pedro Alves [this message]
2022-03-29 16:13       ` Metzger, Markus T
2022-04-08 12:40         ` Metzger, Markus T
2022-05-25 17:12 ` Kevin Buettner
2022-05-31  9:29   ` Metzger, Markus T
2022-05-31 18:44     ` Ben Woodard
2022-05-24 18:40 Ben Woodard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9e7f445c-67cc-ebc1-566b-529c6dc8924b@palves.net \
    --to=pedro@palves.net \
    --cc=gdb-patches@sourceware.org \
    --cc=markus.t.metzger@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).