diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-06-01 17:27:48 +0000 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-06-01 17:38:31 +0000 |
commit | 8081702460726304af496be52234385094392a6f (patch) | |
tree | 55606e2a42e6342aaed360c27c17e9675c9c478e /sysdeps/pthread/Makefile | |
parent | a3e589d1f68d43d4c3f67d59497862875c2d5afc (diff) | |
download | glibc-8081702460726304af496be52234385094392a6f.tar glibc-8081702460726304af496be52234385094392a6f.tar.gz glibc-8081702460726304af496be52234385094392a6f.tar.bz2 glibc-8081702460726304af496be52234385094392a6f.zip |
htl: Make pthread_cond_destroy wait for threads to be woken
This allows to reuse the storage after calling pthread_cond_destroy.
* sysdeps/htl/bits/types/struct___pthread_cond.h (__pthread_cond):
Replace unused struct __pthread_condimpl *__impl field with unsigned int
__wrefs.
(__PTHREAD_COND_INITIALIZER): Update accordingly.
* sysdeps/htl/pt-cond-timedwait.c (__pthread_cond_timedwait_internal):
Register as waiter in __wrefs field. On unregistering, wake any pending
pthread_cond_destroy.
* sysdeps/htl/pt-cond-destroy.c (__pthread_cond_destroy): Register wake
request in __wrefs.
* nptl/Makefile (tests): Move tst-cond20 tst-cond21 to...
* sysdeps/pthread/Makefile (tests): ... here.
* nptl/tst-cond20.c nptl/tst-cond21.c: Move to...
* sysdeps/pthread/tst-cond20.c sysdeps/pthread/tst-cond21.c: ... here.
Diffstat (limited to 'sysdeps/pthread/Makefile')
-rw-r--r-- | sysdeps/pthread/Makefile | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sysdeps/pthread/Makefile b/sysdeps/pthread/Makefile index 74dbca1890..3dc88274a7 100644 --- a/sysdeps/pthread/Makefile +++ b/sysdeps/pthread/Makefile @@ -49,7 +49,7 @@ tests += tst-cnd-basic tst-mtx-trylock tst-cnd-broadcast \ tst-cond1 tst-cond2 tst-cond3 tst-cond4 tst-cond5 tst-cond6 tst-cond7 \ tst-cond8 tst-cond9 tst-cond10 tst-cond11 tst-cond12 tst-cond13 \ tst-cond14 tst-cond15 tst-cond16 tst-cond17 tst-cond18 tst-cond19 \ - tst-cond23 tst-cond24 tst-cond25 tst-cond27 \ + tst-cond20 tst-cond21 tst-cond23 tst-cond24 tst-cond25 tst-cond27 \ tst-cond-except \ tst-join1 tst-join2 tst-join3 tst-join4 tst-join5 tst-join6 tst-join7 \ tst-join8 tst-join9 tst-join10 tst-join11 tst-join12 tst-join13 \ |