aboutsummaryrefslogtreecommitdiff
path: root/nptl/pthread_mutex_setprioceiling.c
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/pthread_mutex_setprioceiling.c')
-rw-r--r--nptl/pthread_mutex_setprioceiling.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/nptl/pthread_mutex_setprioceiling.c b/nptl/pthread_mutex_setprioceiling.c
index cd13d1c14c..301fb63d21 100644
--- a/nptl/pthread_mutex_setprioceiling.c
+++ b/nptl/pthread_mutex_setprioceiling.c
@@ -1,5 +1,5 @@
/* Set current priority ceiling of pthread_mutex_t.
- Copyright (C) 2006 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>, 2006.
@@ -80,7 +80,9 @@ pthread_mutex_setprioceiling (mutex, prioceiling, old_ceiling)
break;
if (oldval != ceilval)
- lll_futex_wait (&mutex->__data.__lock, ceilval | 2);
+ lll_futex_wait (&mutex->__data.__lock, ceilval | 2,
+ // XYZ check mutex flag
+ LLL_SHARED);
}
while (atomic_compare_and_exchange_val_acq (&mutex->__data.__lock,
ceilval | 2, ceilval)
@@ -110,7 +112,9 @@ pthread_mutex_setprioceiling (mutex, prioceiling, old_ceiling)
| (prioceiling << PTHREAD_MUTEX_PRIO_CEILING_SHIFT);
atomic_full_barrier ();
- lll_futex_wake (&mutex->__data.__lock, INT_MAX);
+ lll_futex_wake (&mutex->__data.__lock, INT_MAX,
+ // XYZ check mutex flag
+ LLL_SHARED);
return 0;
}