about summary refs log tree commit diff
path: root/nptl/Makefile
diff options
context:
space:
mode:
authorStefan Liebler <stli@linux.vnet.ibm.com>2018-02-16 09:57:30 +0100
committerStefan Liebler <stli@linux.vnet.ibm.com>2018-02-16 09:57:30 +0100
commit8724507385a591a71297c2da0e12001eae6bd88d (patch)
treed272a8418d373e7b99a58296ae37c0b672567357 /nptl/Makefile
parentdb9881ecd7e7278af3e6bb252a0b3015e275d7bd (diff)
downloadglibc-8724507385a591a71297c2da0e12001eae6bd88d.tar.gz
glibc-8724507385a591a71297c2da0e12001eae6bd88d.tar.xz
glibc-8724507385a591a71297c2da0e12001eae6bd88d.zip
Add runtime check if mutex will be elided in tst-mutex8 testcases.
An elided mutex don't fail destroy. Elision was disabled for the
test nptl/tst-mutex8 in nptl/Makefile. Thus we can run tests which
destroy a locked mutex.

As elision is only disabled for tst-mutex8, the variants
tst-mutex8-static, tst-mutexpi8 and tst-mutexpi8-static are still
failing if lock elision is enabled.

This patch adds a runtime check, if the checked type of mutex will
be elided. This check is using TUNABLE_GET_FULL to determine if
elision is enabled via the tunables framework.
The pthread_mutex_destroy tests are only run if we dont't assume an
elided mutex.

This way, we can run the whole glibc testsuite with or without enabled
lock elision.

ChangeLog:

	* nptl/Makefile (tst-mutex8-ENV): Delete.
	* nptl/tst-mutex8.c (check_type):
	Add runtime check if mutex will be elided.
Diffstat (limited to 'nptl/Makefile')
-rw-r--r--nptl/Makefile4
1 files changed, 0 insertions, 4 deletions
diff --git a/nptl/Makefile b/nptl/Makefile
index 6fc2c8bb6a..9340f9f699 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -726,10 +726,6 @@ endif
 
 $(objpfx)tst-compat-forwarder: $(objpfx)tst-compat-forwarder-mod.so
 
-# Disable elision for tst-mutex8 so it can verify error case for
-# destroying a mutex.
-tst-mutex8-ENV = GLIBC_TUNABLES=glibc.elision.enable=0
-
 # The tests here better do not run in parallel
 ifneq ($(filter %tests,$(MAKECMDGOALS)),)
 .NOTPARALLEL: