Hi Adhemerval, > The idea is to make NPTL implementation to use on the functions > provided by futex-internal.h. > > Checked on x86_64-linux-gnu and i686-linux-gnu. > --- > nptl/lowlevellock.c | 6 +++--- > nptl/pthread_mutex_lock.c | 9 +++++---- > nptl/pthread_mutex_setprioceiling.c | 5 +++-- > nptl/pthread_mutex_timedlock.c | 6 +++--- > 4 files changed, 14 insertions(+), 12 deletions(-) > > diff --git a/nptl/lowlevellock.c b/nptl/lowlevellock.c > index f69547a235..973df4d03a 100644 > --- a/nptl/lowlevellock.c > +++ b/nptl/lowlevellock.c > @@ -18,7 +18,7 @@ > . */ > > #include > -#include > +#include > #include > #include > > @@ -32,7 +32,7 @@ __lll_lock_wait_private (int *futex) > { > futex: > LIBC_PROBE (lll_lock_wait_private, 1, futex); > - lll_futex_wait (futex, 2, LLL_PRIVATE); /* Wait if *futex == > 2. */ > + futex_wait ((unsigned int *) futex, 2, LLL_PRIVATE); /* Wait > if *futex == 2. */ } > } > > @@ -49,7 +49,7 @@ __lll_lock_wait (int *futex, int private) > { > futex: > LIBC_PROBE (lll_lock_wait, 1, futex); > - lll_futex_wait (futex, 2, private); /* Wait if *futex == 2. */ > + futex_wait ((unsigned int *) futex, 2, private); /* Wait if > *futex == 2. */ } > } > #endif > diff --git a/nptl/pthread_mutex_lock.c b/nptl/pthread_mutex_lock.c > index 1f137f6201..965c5a3f4a 100644 > --- a/nptl/pthread_mutex_lock.c > +++ b/nptl/pthread_mutex_lock.c > @@ -307,8 +307,8 @@ __pthread_mutex_lock_full (pthread_mutex_t *mutex) > assume_other_futex_waiters |= FUTEX_WAITERS; > > /* Block using the futex and reload current lock value. */ > - lll_futex_wait (&mutex->__data.__lock, oldval, > - PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); > + futex_wait ((unsigned int *) &mutex->__data.__lock, oldval, > + PTHREAD_ROBUST_MUTEX_PSHARED (mutex)); > oldval = mutex->__data.__lock; > } > > @@ -568,8 +568,9 @@ __pthread_mutex_lock_full (pthread_mutex_t *mutex) > break; > > if (oldval != ceilval) > - lll_futex_wait (&mutex->__data.__lock, ceilval | 2, > - PTHREAD_MUTEX_PSHARED (mutex)); > + futex_wait ((unsigned int * ) > &mutex->__data.__lock, > + ceilval | 2, > + PTHREAD_MUTEX_PSHARED (mutex)); > } > while (atomic_compare_and_exchange_val_acq > (&mutex->__data.__lock, ceilval | 2, ceilval) > diff --git a/nptl/pthread_mutex_setprioceiling.c > b/nptl/pthread_mutex_setprioceiling.c index 521da72622..cbef202579 > 100644 --- a/nptl/pthread_mutex_setprioceiling.c > +++ b/nptl/pthread_mutex_setprioceiling.c > @@ -21,6 +21,7 @@ > #include > #include > #include > +#include > > > int > @@ -84,8 +85,8 @@ pthread_mutex_setprioceiling (pthread_mutex_t > *mutex, int prioceiling, break; > > if (oldval != ceilval) > - lll_futex_wait (&mutex->__data.__lock, ceilval | 2, > - PTHREAD_MUTEX_PSHARED (mutex)); > + futex_wait ((unsigned int *) &mutex->__data.__lock, > ceilval | 2, > + PTHREAD_MUTEX_PSHARED (mutex)); > } > while (atomic_compare_and_exchange_val_acq > (&mutex->__data.__lock, ceilval | 2, ceilval) > diff --git a/nptl/pthread_mutex_timedlock.c > b/nptl/pthread_mutex_timedlock.c index e643eab258..343acf6107 100644 > --- a/nptl/pthread_mutex_timedlock.c > +++ b/nptl/pthread_mutex_timedlock.c > @@ -561,9 +561,9 @@ __pthread_mutex_clocklock_common (pthread_mutex_t > *mutex, goto failpp; > } > > - lll_futex_timed_wait (&mutex->__data.__lock, > - ceilval | 2, &rt, > - PTHREAD_MUTEX_PSHARED > (mutex)); > + __futex_abstimed_wait64 ( > + (unsigned int *) &mutex->__data.__lock, > clockid, > + ceilval | 2, &rt, PTHREAD_MUTEX_PSHARED > (mutex)); } > } > while (atomic_compare_and_exchange_val_acq > (&mutex->__data.__lock, Reviewed-by: Lukasz Majewski Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de