[newlib-cygwin] Cygwin: testsuite: Update mutex tests for changed default mutex type

Jon Turney jturney@sourceware.org
Fri Jan 13 17:05:10 GMT 2023


https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=736618054c4f93fd1a81a8f53bf08a558f2f2ba2

commit 736618054c4f93fd1a81a8f53bf08a558f2f2ba2
Author: Jon Turney <jon.turney@dronecode.org.uk>
Date:   Wed Aug 31 20:32:47 2022 +0100

    Cygwin: testsuite: Update mutex tests for changed default mutex type
    
    Default mutex type is PTHREAD_MUTEX_NORMAL.
    
    Attempting to unlock an unowned mutex of that type is specified as
    undefined behaviour, not returning EPERM.
    
    mutex7e verfies that attempting to unlock an unowned mutex of type
    PTHREAD_MUTEX_ERRORCHECK returns EPERM.

Diff:
---
 winsup/testsuite/winsup.api/pthread/mutex5.c  | 2 +-
 winsup/testsuite/winsup.api/pthread/mutex7.c  | 3 +--
 winsup/testsuite/winsup.api/pthread/mutex7d.c | 3 +--
 winsup/testsuite/winsup.api/pthread/mutex7n.c | 1 -
 4 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/winsup/testsuite/winsup.api/pthread/mutex5.c b/winsup/testsuite/winsup.api/pthread/mutex5.c
index 7029da12f..6d24275f1 100644
--- a/winsup/testsuite/winsup.api/pthread/mutex5.c
+++ b/winsup/testsuite/winsup.api/pthread/mutex5.c
@@ -23,7 +23,7 @@ main()
     {
       assert(pthread_mutexattr_init(&mxAttr) == 0);
       assert(pthread_mutexattr_gettype(&mxAttr, &mxType) == 0);
-      assert(mxType == PTHREAD_MUTEX_ERRORCHECK);
+      assert(mxType == PTHREAD_MUTEX_NORMAL);
     }
 
   return 0;
diff --git a/winsup/testsuite/winsup.api/pthread/mutex7.c b/winsup/testsuite/winsup.api/pthread/mutex7.c
index d2c9f8bee..6acb12317 100644
--- a/winsup/testsuite/winsup.api/pthread/mutex7.c
+++ b/winsup/testsuite/winsup.api/pthread/mutex7.c
@@ -2,7 +2,7 @@
  * mutex7.c
  *
  * Test the default (type not set) mutex type.
- * Should be the same as PTHREAD_MUTEX_ERRORCHECK.
+ * Should be the same as PTHREAD_MUTEX_NORMAL.
  * Thread locks then trylocks mutex (attempted recursive lock).
  * The thread should lock first time and EBUSY second time.
  *
@@ -25,7 +25,6 @@ void * locker(void * arg)
   assert(pthread_mutex_trylock(&mutex) == EBUSY);
   lockCount++;
   assert(pthread_mutex_unlock(&mutex) == 0);
-  assert(pthread_mutex_unlock(&mutex) == EPERM);
 
   return 0;
 }
diff --git a/winsup/testsuite/winsup.api/pthread/mutex7d.c b/winsup/testsuite/winsup.api/pthread/mutex7d.c
index 906d0f043..98b74fc5b 100644
--- a/winsup/testsuite/winsup.api/pthread/mutex7d.c
+++ b/winsup/testsuite/winsup.api/pthread/mutex7d.c
@@ -2,7 +2,7 @@
  * mutex7d.c
  *
  * Test the default (type not set) mutex type.
- * Should be the same as PTHREAD_MUTEX_ERRORCHECK.
+ * Should be the same as PTHREAD_MUTEX_NORMAL.
  * Thread locks then trylocks mutex (attempted recursive lock).
  * The thread should lock first time and EBUSY second time.
  *
@@ -25,7 +25,6 @@ void * locker(void * arg)
   assert(pthread_mutex_trylock(&mutex) == EBUSY);
   lockCount++;
   assert(pthread_mutex_unlock(&mutex) == 0);
-  assert(pthread_mutex_unlock(&mutex) == EPERM);
 
   return 0;
 }
diff --git a/winsup/testsuite/winsup.api/pthread/mutex7n.c b/winsup/testsuite/winsup.api/pthread/mutex7n.c
index e9a36fec0..a04792b61 100644
--- a/winsup/testsuite/winsup.api/pthread/mutex7n.c
+++ b/winsup/testsuite/winsup.api/pthread/mutex7n.c
@@ -29,7 +29,6 @@ void * locker(void * arg)
   assert(pthread_mutex_trylock(&mutex) == EBUSY);
   lockCount++;
   assert(pthread_mutex_unlock(&mutex) == 0);
-  assert(pthread_mutex_unlock(&mutex) == EPERM);
 
   return (void *) 555;
 }


More information about the Cygwin-cvs mailing list