[PATCH] Correct minimal test suite changes for elision enabled kernels.

Stefan Liebler stli@linux.vnet.ibm.com
Mon Apr 7 14:03:00 GMT 2014


Hi,
according to the comment of Andi Kleen (see below),
i´ve dropped the ifdef.
Please test it on an intel machine with lock elision support!

Bye

---
2014-04-07  Stefan Liebler  <stli@linux.vnet.ibm.com>

	* nptl/tst-mutex5 (do_test):
	Remove #ifdef ENABLE_LOCK_ELISION.
---

On Fri, Apr 04, 2014 at 01:52:18PM +0200, Stefan Liebler wrote:
 > Hi,
 >
 > according to the comment in
 > "Re: [PATCH 03/14] Add minimal test suite changes for elision
 > enabled kernels"
 > (https://www.sourceware.org/ml/libc-alpha/2013-06/msg01145.html),
 > the tests tst-mutex5/8 are changed in order to not check some
 > behaviour of POSIX if lock elision is enabled at configure time.
 > Currently, the timeout of pthread_mutex_timedlock is only tested
 > with elision enabled at configure time and not for the default case.

If it works with elision we can actually drop the ifdef,
as it should work in both cases.

May have been a left over from before trylock aborted.

-Andi

 >
 > Bye
 >
 > ---
 > 2014-04-04  Stefan Liebler  <stli@linux.vnet.ibm.com>
 >
 > 	* nptl/tst-mutex5 (do_test):
 > 	Use #ifndef ENABLE_LOCK_ELISION instead of #ifdef.
 > ---

 > diff --git a/nptl/tst-mutex5.c b/nptl/tst-mutex5.c
 > index 14d3025..a829272 100644
 > --- a/nptl/tst-mutex5.c
 > +++ b/nptl/tst-mutex5.c
 > @@ -87,7 +87,7 @@ do_test (void)
 >      }
 >
 >    /* Elided locks do not time out.  */
 > -#ifdef ENABLE_LOCK_ELISION
 > +#ifndef ENABLE_LOCK_ELISION
 >    if (pthread_mutex_trylock (&m) == 0)
 >      {
 >        puts ("mutex_trylock succeeded");


-- ak@linux.intel.com -- Speaking for myself only
-------------- next part --------------
diff --git a/nptl/tst-mutex5.c b/nptl/tst-mutex5.c
index 14d3025..6988840 100644
--- a/nptl/tst-mutex5.c
+++ b/nptl/tst-mutex5.c
@@ -86,8 +86,6 @@ do_test (void)
       return 1;
     }
 
-  /* Elided locks do not time out.  */
-#ifdef ENABLE_LOCK_ELISION
   if (pthread_mutex_trylock (&m) == 0)
     {
       puts ("mutex_trylock succeeded");
@@ -183,7 +181,6 @@ do_test (void)
       puts ("3rd timedlock didn't return right away");
       return 1;
     }
-#endif
 
   if (pthread_mutex_unlock (&m) != 0)
     {


More information about the Libc-alpha mailing list