This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PING 3][PATCH v10] Add pretty printers for the NPTL lock types
- From: Martin Galvan <martin dot galvan at tallertechnologies dot com>
- To: libc-alpha at sourceware dot org, "Carlos O'Donell" <carlos at redhat dot com>, Siddhesh Poyarekar <sid at reserved-bit dot com>, Pedro Alves <palves at redhat dot com>, Stefan Liebler <stli at linux dot vnet dot ibm dot com>
- Date: Wed, 3 Aug 2016 12:13:05 -0300
- Subject: Re: [PING 3][PATCH v10] Add pretty printers for the NPTL lock types
- Authentication-results: sourceware.org; auth=none
- References: <20160803143224.2549-1-martin.galvan@tallertechnologies.com>
Hi Stefan! Thanks a lot for the feedback (and patience).
On Wed, Aug 3, 2016 at 11:46 AM, Stefan Liebler <stli@linux.vnet.ibm.com> wrote:
> Hi Martin,
>
> please have a look at my comments to "[PATCH v10] Add pretty printers for
> the NPTL lock types":
Sorry, I missed that reply; in the future please CC me directly since
sometimes I miss the e-mails in the list digest.
On Tue, Jul 19, 2016 at 12:52 PM, Stefan Liebler
<stli@linux.vnet.ibm.com> wrote:
> I run the tests on a machine (fedora23 i686, s390x, s390) with pexpect version 4.0.1 => FAIL:
>
> The out-file is empty, but on terminal the tests dump:
> Traceback (most recent call last):
> File "test-mutexattr-printers.py", line 22, in <module>
> from test_printers_common import *
>
> File "/home/stli/glibcDir/glibc/scripts/test_printers_common.py", line 67, in <module>
>
> gdb_version = (int(match.group(1)), int(match.group(2)))
> AttributeError: 'NoneType' object has no attribute 'group'
>
> re.search does not find the gdb-version string and is returning None.
> On e.g. Fedora, gdb --version prints:
> GNU gdb (GDB) Fedora 7.10-23.fc23
> Copyright (C) 2015 Free Software Foundation, Inc.
Silly me, I thought the version string wouldn't change like that
between distros. Guess I'll have to find some other way to check for
it (hopefully not a more complicated regexp). Thanks for pointing it
out.
> If I remove the check for correct gdb-version as these machines (i686, s390x, s390 fedora 23) have correct gdb, pexpect version and glibc is built without debug-info:
>
> Response: Python Exception <class 'gdb.error'> No struct type named pthread_condattr.:
Yes, I believe this is happening because glibc doesn't have debug symbols.
> If glibc is built on i686 fedora 23 with debug-info:
> FAIL: nptl/test-condattr-printers; out-file:
> Error: Response does not match the expected pattern.
> Command: print *condvar
> Expected pattern: Shared = Yes
> Response: $6 = pthread_cond_t = {Threads waiting for this condvar = 0,
>
> Clock ID = CLOCK_REALTIME, Shared = No, Mutex = Cannot access memory at address 0xffffffff
>
> If glibc is built on s390 (31bit) fedora 23 with debug-info:
> FAIL: nptl/test-condattr-printers;
> The out-file contains the same error as on 32bit intel.
This is really weird. I'll look further into it, thanks for pointing it out.
> Is this the intention, that glibc has to be build with debug-information in order to get no test fails?
Yes, definitely. I was thinking of adding a check for it, but I
haven't come up with a portable enough way yet (just as with the gdb
version).