[BZ #4392]
authorUlrich Drepper <drepper@redhat.com>
Sat, 28 Apr 2007 04:23:56 +0000 (04:23 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sat, 28 Apr 2007 04:23:56 +0000 (04:23 +0000)
* pthread_mutex_trylock.c (__pthread_mutex_trylock): Treat error
check mutexes like normal mutexes.

nptl/ChangeLog
nptl/pthread_mutex_trylock.c

index 382122968480153d6791b5d183645b909be70efc..ce3ca4101c2fe34a3a51b32a7dfe446c63cd8233 100644 (file)
@@ -1,5 +1,9 @@
 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
 
+       [BZ #4392]
+       * pthread_mutex_trylock.c (__pthread_mutex_trylock): Treat error
+       check mutexes like normal mutexes.
+
        [BZ #4306]
        * sysdeps/unix/sysv/linux/timer_create.c (timer_create):
        Initialize the whole sigevent structure to appease valgrind.
index 94d519233b5d5d3dce880aebb706f1d0916b3b83..4990ecd7114def59abb6f7cef4209bf2c408771b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003, 2005, 2006, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
 
@@ -58,12 +58,6 @@ __pthread_mutex_trylock (mutex)
       break;
 
     case PTHREAD_MUTEX_ERRORCHECK_NP:
-      /* Check whether we already hold the mutex.  */
-      if (__builtin_expect (mutex->__data.__owner == id, 0))
-       return EDEADLK;
-
-      /* FALLTHROUGH */
-
     case PTHREAD_MUTEX_TIMED_NP:
     case PTHREAD_MUTEX_ADAPTIVE_NP:
       /* Normal mutex.  */
@@ -76,7 +70,6 @@ __pthread_mutex_trylock (mutex)
 
       return 0;
 
-
     case PTHREAD_MUTEX_ROBUST_RECURSIVE_NP:
     case PTHREAD_MUTEX_ROBUST_ERRORCHECK_NP:
     case PTHREAD_MUTEX_ROBUST_NORMAL_NP: