This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] hppa: Optimize atomic_compare_and_exchange_val_acq
- From: John David Anglin <dave dot anglin at bell dot net>
- To: Florian Weimer <fw at deneb dot enyo dot de>
- Cc: Carlos O'Donell <carlos at redhat dot com>, GNU C Library <libc-alpha at sourceware dot org>, deller at kernel dot org, Mike Frysinger <vapier at gentoo dot org>, Aurelien Jarno <aurelien at aurel32 dot net>
- Date: Sun, 2 Oct 2016 12:47:24 -0400
- Subject: Re: [PATCH] hppa: Optimize atomic_compare_and_exchange_val_acq
- Authentication-results: sourceware.org; auth=none
- References: <58B70052-B987-4C41-B603-F3AAB2FDE34B@bell.net> <85e42696-2979-c359-ac83-b6cc6a34bb67@redhat.com> <CA5F11AD-A3C1-4037-BDC1-31025BDAFEF4@bell.net> <87eg4bjdha.fsf@mid.deneb.enyo.de> <a1024fbb-8b25-2e02-e642-0412639e26f7@redhat.com> <723790DF-7C85-4025-8087-AD0311DB1BA1@bell.net> <87oa37eo4m.fsf@mid.deneb.enyo.de>
On 2016-09-28, at 5:00 PM, Florian Weimer wrote:
> * John David Anglin:
>
>> On 2016-09-27, at 1:17 PM, Carlos O'Donell wrote:
>>
>>> Is the FAIL->PASS for tst-stack4 reliably tied to the addition of
>>> this patch?
>>
>> I don't think so. It has something to do with testsuite. When I run
>> test directly, it fails:
>>
>> dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
>> tst-stack4: tst-stack4.c:69: dso_process: Assertion `handle[dso]' failed.
>> Didn't expect signal from child: got `Aborted'
>
> I think you need to put the current directory on the library path.
> The test harness does this automatically to locate libpthread.so.0,
> but if you run the test manually, you need to do this yourself.
Yes, this fixes the above problem.
The test fails randomly with debian glibc_2.24-3:
dave@mx3210:~/gnu/glibc/objdir/nptl$ export LD_LIBRARY_PATH=`pwd`
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
dave@mx3210:~/gnu/glibc/objdir/nptl$ echo $?
0
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
dave@mx3210:~/gnu/glibc/objdir/nptl$ echo $?
0
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
dave@mx3210:~/gnu/glibc/objdir/nptl$ echo $?
0
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!
dave@mx3210:~/gnu/glibc/objdir/nptl$ echo $?
127
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
Inconsistency detected by ld.so: dl-tls.c: 493: _dl_allocate_tls_init: Assertion `listp->slotinfo[cnt].gen <= GL(dl_tls_generation)' failed!
dave@mx3210:~/gnu/glibc/objdir/nptl$ ./tst-stack4
dave@mx3210:~/gnu/glibc/objdir/nptl$ echo $?
0
Dave
--
John David Anglin dave.anglin@bell.net