This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 03/10] Add external interface changes: new lock types forpthread_mutex_t

> (c) Add specific pthread_mutexattr_*_np() functions to enable
>     or disable lock elision with the attribute used to create
>     the mutex. Add a new pthread's section in the manual to
>     describe these as "reqeust that lock elision be used if
>     available" etc. etc.
>     I suggest creating a generic interface:
>     pthread_mutexattr_setparam_np(int parameter, int value);
>     pthread_mutexattr_getparam_np(int parameter, int value);
>     Where paramter is one of:
>     PTHREAD_MUTEX_ELISION (your new bit)
>     PTHREAD_MUTEX_SHARED (the existing bit 31 for pshared)

So I had it all coded up and tested, but for the PTHREAD_MUTEX_INIT_NP
it's needed to support or'ing flags anyways:


but with that can as well or in pthread_mutexattr_settype() too:


and that's more consistent overall and the same everywhere. Also works for PSHARED.

It also avoids adding new functions, which is a pain for binary compatibility.
With that I'm dropping the pthread_mutexattr_setelision_np interfaces.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]