This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Export stack_used as __stack_used
- From: Pedro Alves <palves at redhat dot com>
- To: Andreas Schwab <schwab at linux-m68k dot org>, Florian Weimer <fweimer at redhat dot com>, Gary Benson <gbenson at redhat dot com>, libc-alpha at sourceware dot org
- Date: Wed, 22 Jun 2016 15:30:32 +0100
- Subject: Re: [PATCH] Export stack_used as __stack_used
- Authentication-results: sourceware.org; auth=none
- References: <f6867d8f-3532-1ac2-cc7f-e7bb6ea12202 at redhat dot com> <20160617195018 dot GA20374 at blade dot nx> <ce9c88a4-5709-707e-c598-d438198df85f at redhat dot com> <987ac43c-9883-a194-9860-58e13cbe54e9 at redhat dot com> <m2bn2zyoo7 dot fsf at linux-m68k dot org> <6809739e-ef4f-fd2f-7b8f-5cab5d52bf95 at redhat dot com> <db7fd0cc-287c-f08d-9de7-b00bdac0993a at redhat dot com> <mvm37o8ut7d dot fsf at hawking dot suse dot de> <a58deba5-b1ff-f602-1ba7-3b1ed0a9beef at redhat dot com> <8760t28n4y dot fsf at linux-m68k dot org> <20160622105744 dot GD24532 at vapier dot lan>
On 06/22/2016 11:57 AM, Mike Frysinger wrote:
> On 21 Jun 2016 19:31, Andreas Schwab wrote:
>> Florian Weimer <fweimer@redhat.com> writes:
>>> Does compatibility really matter? I thought you need exactly matching
>>> libpthread and libthread_db versions anyway. I suppose we could even
>>> compile the offsets into libthread_db.
>>
>> The thread_db interface appears to be generic enough to be able to cope
>> with different versions.
>
> while true, i don't think that means you can mix & match. we've always
> said glibc libs must be coherent (can't mix 2.15 libpthread with a 2.17
> libc), so i'm not sure why thread_db is any different.
Yeah, I don't think it's any different.
Making libthread_db cope with multiple versions would be a bad design decision, IMO.
It'd be easy-ish to make it cope if just some constant offsets in data structures
change (e.g., to cope with new fields in structures) between glibc versions, but
if the data structures themselves change, like moving from linked lists to vectors
to hash tables, etc. things get complicated.
Sorting all that out, along with debugger x debuggee arch- and ABI-independence,
is the whole point of Infinity.
Thanks,
Pedro Alves