[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Test-lock hang (not 100% reproducible) on GNU/Linux
From: |
Bruno Haible |
Subject: |
Re: Test-lock hang (not 100% reproducible) on GNU/Linux |
Date: |
Wed, 04 Jan 2017 12:58:37 +0100 |
User-agent: |
KMail/4.8.5 (Linux/3.8.0-44-generic; KDE/4.8.5; x86_64; ; ) |
> and it points to two tests from the Linux test project [5][6]. Can you run
> these tests on your Koji system?
For me, these two tests fail on a glibc-2.23 system:
$ wget
https://raw.githubusercontent.com/linux-test-project/ltp/master/testcases/open_posix_testsuite/conformance/interfaces/pthread_rwlock_rdlock/2-1.c
$ wget
https://raw.githubusercontent.com/linux-test-project/ltp/master/testcases/open_posix_testsuite/conformance/interfaces/pthread_rwlock_rdlock/2-2.c
$ wget
https://raw.githubusercontent.com/linux-test-project/ltp/master/testcases/open_posix_testsuite/include/posixtest.h
$ gcc -O -Wall 2-1.c -lpthread
$ ./a.out
main: has priority: 3
main: attempt read lock
main: acquired read lock
main: create wr_thread, with priority: 2
wr_thread: attempt write lock
main: create rd_thread, with priority: 1
rd_thread: attempt read lock
rd_thread: acquired read lock
rd_thread: unlock read lock
Test FAILED: rd_thread did not block on read lock, when a reader owns the lock,
and a higher priority writer is waiting for the lock
$ gcc -O -Wall 2-2.c -lpthread
$ ./a.out
main: attempt read lock
main: acquired read lock
main: create wr_thread, with priority: 2
wr_thread: attempt write lock
main: create rd_thread, with priority: 2
rd_thread: attempt read lock
rd_thread: acquired read lock
rd_thread: unlock read lock
Test FAILED: rd_thread did not block on read lock, when a reader owns the lock,
and an equal priority writer is waiting for the lock
In an 'ltrace' invocation, I see calls to pthread_rwlock_rdlock.
In an 'strace' invocation, I only see calls to futex, rt_sigaction,
rt_sigprocmask, which can be assumed to be correctly implemented.
So, the blame is clearly on glibc.
Bruno
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, (continued)
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Bruno Haible, 2017/01/02
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Pavel Raiskup, 2017/01/02
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Bruno Haible, 2017/01/03
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Pavel Raiskup, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Bruno Haible, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Pádraig Brady, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Bruno Haible, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Pavel Raiskup, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux,
Bruno Haible <=
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Pavel Raiskup, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Pavel Raiskup, 2017/01/04
- Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Bruno Haible, 2017/01/04
Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Bruno Haible, 2017/01/05
Re: Test-lock hang (not 100% reproducible) on GNU/Linux, Torvald Riegel, 2017/01/05