This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v8] Add pretty printers for the NPTL lock types
- From: Martin Galvan <martin dot galvan at tallertechnologies dot com>
- To: Siddhesh Poyarekar <siddhesh at sourceware dot org>
- Cc: libc-alpha at sourceware dot org, "Carlos O'Donell" <carlos at redhat dot com>
- Date: Tue, 21 Jun 2016 18:22:27 -0300
- Subject: Re: [PATCH v8] Add pretty printers for the NPTL lock types
- Authentication-results: sourceware.org; auth=none
- References: <20160608153304 dot 12910-1-martin dot galvan at tallertechnologies dot com> <20160608153841 dot GA8366 at devel dot intra dot reserved-bit dot com> <CAOKbPbZCbrfM=FRq6e7C3c8uXp9v+BODAoh6Qat7XRwOb5cEHA at mail dot gmail dot com> <20160619164448 dot GA5245 at devel dot intra dot reserved-bit dot com> <CAOKbPbYpRcwJ8QNSgvW9BxkOeTSBnWEGGFRMOY=RSzoK6k1-Bw at mail dot gmail dot com> <20160620041246 dot GB5245 at devel dot intra dot reserved-bit dot com>
On Mon, Jun 20, 2016 at 1:12 AM, Siddhesh Poyarekar
<siddhesh@sourceware.org> wrote:
> In Makeconfig there is a conditional that decides whether to use rpath
> or rpath-link. Additionally it also decides whether to use the built
> dynamic linker or the system dynamic linker. You'll have to enhance
> the conditional so that it selects rpath and the built dynamic linker
> when in the pretty-printers subdir.
Great, how would I go about doing this? That is, just exactly what
should I write? I'm thinking of adding something like
old-link-rpath := link-libc-tests-rpath-link
link-libc-tests-rpath-link = -Wl,-rpath=$(rpath-link)
at the beginning of pretty-printers/Makefile, and then
link-libc-tests-rpath-link = old-link-rpath
at the end.
In any case, how can I know gdb isn't loading the recently built
libraries? info share shows the following for test-mutex-printer:
(gdb) info share
>From To Syms Read Shared Object Library
0x00007ffff7ddbad0 0x00007ffff7df5960 Yes
/home/martin/glibc/install/lib/ld-linux-x86-64.so.2
No linux-vdso.so.1
0x00007ffff7bc3a90 0x00007ffff7bd03f1 Yes
/home/martin/glibc/install/lib/libpthread.so.0
0x00007ffff78489a0 0x00007ffff796ad53 Yes
/home/martin/glibc/install/lib/libc.so.6
Looks to me like it's finding the built library alright.
Just in case, I'm using gdb 7.7.1. However, gdb 7.11.50.20160531-git
also seems to be loading fine:
(gdb) info share
>From To Syms Read Shared Object Library
0x00007ffff7ddbad0 0x00007ffff7df5960 Yes
/home/martin/glibc/install/lib/ld-linux-x86-64.so.2
0x00007ffff7bc3a90 0x00007ffff7bd03f1 Yes
/home/martin/glibc/install/lib/libpthread.so.0
0x00007ffff78489a0 0x00007ffff796ad53 Yes
/home/martin/glibc/install/lib/libc.so.6
> Yes, it is not a bad idea to print out diagnostic information even in
> case of success. The hang (rather, timeout) happens on line 66
> ('Owner ID': r'{0} \(dead\)') for me.
Now, here's the interesting thing: it seems that set scheduler-locking
on (which is supposed to prevent the child thread from running) isn't
working correctly in gdb 7.11, yet it does in gdb 7.7. I'll look
further into this and get back at you. In the meanwhile, it would be
useful if you told me which version are you using.
Thanks.