Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: "Billie Alsup \(balsup\) via Gdb" <gdb@sourceware.org>
To: Florian Weimer <fweimer@redhat.com>,
	Peter Bergner via Libc-help <libc-help@sourceware.org>,
	Peter Bergner <bergner@tenstorrent.com>
Cc: Michael Meissner <meissner@linux.ibm.com>,
	Carl Love <cel@linux.ibm.com>,
	 "libc-alpha@sourceware.org" <libc-alpha@sourceware.org>,
	Segher Boessenkool <segher@kernel.crashing.org>,
	"gdb@sourceware.org" <gdb@sourceware.org>,
	Surya Kumari Jangala <jskumari@linux.ibm.com>
Subject: Re: [EXT] Re: gdb does not stop at printf for ppc
Date: Thu, 2 Oct 2025 18:49:02 +0000	[thread overview]
Message-ID: <BY5PR11MB4244E0E99DDA5C13CAD028AED9E7A@BY5PR11MB4244.namprd11.prod.outlook.com> (raw)
In-Reply-To: <bac62c25-40d0-451c-99a9-b3a4b8995574@tenstorrent.com>

I have a similar problem with other functions.  I discovered that the linker --wrap option no longer wraps what I was expecting.  For example, wrapping strtoul stopped working with a new glibc, as what was really being invoked was _isoc23_strtoul (and apparently the linker never sees the symbol strtoul).   I think it is related  to the use of asm in the REDIRECT macros for such functions, which I'm guessing is similar to how printf is being redirected in this thread.


extern unsigned long int __REDIRECT_NTH (strtoul,
                                         (const char *__restrict __nptr,
                                          char **__restrict __endptr,
                                          int __base), __isoc23_strtoul)
     __nonnull ((1));



________________________________________
From: Libc-help <libc-help-bounces~balsup=cisco.com@sourceware.org> on behalf of Peter Bergner via Libc-help <libc-help@sourceware.org>
Sent: Thursday, October 2, 2025 11:12 AM
To: Florian Weimer <fweimer@redhat.com>; Peter Bergner via Libc-help <libc-help@sourceware.org>
Cc: Michael Meissner <meissner@linux.ibm.com>; Carl Love <cel@linux.ibm.com>; libc-alpha@sourceware.org <libc-alpha@sourceware.org>; Segher Boessenkool <segher@kernel.crashing.org>; gdb@sourceware.org <gdb@sourceware.org>; Surya Kumari Jangala <jskumari@linux.ibm.com>
Subject: Re: [EXT] Re: gdb does not stop at printf for ppc
 
On 10/2/25 11:58 AM, Florian Weimer wrote:
> * Peter Bergner via Libc-help:
>
>> Ok, it's an even bigger problem than we thought.  I'm surprised no one
>> else has hit this before us.
>
> We've encountered it with fortification and IFUNC resolvers.  It used to
> be considered a user error.

Yeah, I don't think we can consider this a user error, since the user
called printf() and so should validly expect that "break printf" in gdb
should work.  It was only the shifty compiler that silently replaced
printf with __printfieee128 that broke everything! :-)



>> Ok, this is promising and yeah, is what Carl and Uli suggested.
>> That said, their comment from the bugzilla:
>>
>>     The new redirected symbols need to be dynamic symbols in case only
>>     the stripped binary is available.
>
> I'd recommend distributions do not strip .symtab on libc.so.6.  I don't
> think making this a dynamic symbol is worth it.  It would have to be a
> compatibility symbol under a separate symbol version, one for each
> variant alias (eight for POWER?).  This is quite a bit of complexity.

I'd be fine with that, if that is what everyone else thinks is best.
Worst case, a distro strips libc.so.6 and we're just back with the
current state of behavior.  Do we know what Debian/Ubuntu and Gentoo
do wrt strpping or not stripping libc.so.6?

I definitely don't like the idea of all of those compatibility symbols!


Peter


  reply	other threads:[~2025-10-02 18:50 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <f4e905f7-48cb-439a-a8e6-a50242c18e6a@linux.ibm.com>
2025-10-01  4:03 ` Peter Bergner via Gdb
2025-10-01 17:20   ` Adhemerval Zanella Netto via Gdb
2025-10-02 15:57     ` [EXT] " Peter Bergner via Gdb
2025-10-02 16:19       ` Carl Love via Gdb
2025-10-02 16:58       ` Florian Weimer via Gdb
2025-10-02 18:12         ` Peter Bergner via Gdb
2025-10-02 18:49           ` Billie Alsup (balsup) via Gdb [this message]
2025-10-02 19:09             ` Peter Bergner via Gdb
2025-10-03 19:43     ` Tom Tromey
2025-10-07 17:21       ` Adhemerval Zanella Netto via Gdb
2025-10-15 14:33         ` [EXT] " Peter Bergner via Gdb
2025-10-15 17:09           ` Sachin Monga via Gdb
2025-11-05  6:00             ` Sachin Monga via Gdb
2025-11-06  4:13               ` Peter Bergner via Gdb

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=BY5PR11MB4244E0E99DDA5C13CAD028AED9E7A@BY5PR11MB4244.namprd11.prod.outlook.com \
    --to=gdb@sourceware.org \
    --cc=balsup@cisco.com \
    --cc=bergner@tenstorrent.com \
    --cc=cel@linux.ibm.com \
    --cc=fweimer@redhat.com \
    --cc=jskumari@linux.ibm.com \
    --cc=libc-alpha@sourceware.org \
    --cc=libc-help@sourceware.org \
    --cc=meissner@linux.ibm.com \
    --cc=segher@kernel.crashing.org \
    /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