[PATCH 1/2] nptl: Remove __ASSUME_SET_ROBUST_LIST
Florian Weimer
fweimer@redhat.com
Thu Apr 20 12:52:00 GMT 2017
On 04/20/2017 02:50 PM, Adhemerval Zanella wrote:
>
>
> On 19/04/2017 15:09, Florian Weimer wrote:
>> On 04/19/2017 07:38 PM, Adhemerval Zanella wrote:
>>> On Wed, Apr 19, 2017 at 12:28 PM, Florian Weimer <fweimer@redhat.com> wrote:
>>>> On 04/19/2017 04:17 PM, Adhemerval Zanella wrote:
>>>>>
>>>>> The problem is kernel supports for some architecture depends of kernel
>>>>> config
>>>>> and the underlying hardware revision/model.
>>>>
>>>>
>>>> I understand that. But I have seen a lot of use of robust mutexes lately,
>>>> and I'm sure these developers aren't aware that the mutexes aren't portable
>>>> across GNU/Linux (the Linux architecture subset supported by glibc).
>>>>
>>>> I expect it's like the missing accept4 system callâyou need to provide the
>>>> set_robust_list system call in the kernel if you want to a working, modern
>>>> system.
>>>
>>> But my point is with current minimum supported kernel version for some
>>> architectures
>>> we can't simple assume set_robust_list support and even bumping minimum kernel
>>> version for some architectures also do not solve the issue (on mips
>>> for instance).
>>
>> Hmm, maybe you are right, and we have to keep things this way for now.
>>
>> But I don't like that your patch reintroduces the conditional code. You could use
>>
>> #define __set_robust_list_avail 1
>>
>> for the __ASSUME_SET_ROBUST_LIST case to reduce clutter, and let GCC do the rest.
>
> Rechecking what you meant, I am not following you here: the idea is to have
> __set_robust_list_avail being a runtime variable and get rid of the _ASSUME
> define. How using a define would help in this way?
I suggest to keep the __ASSUME_SET_ROBUST_LIST define but concentrate
its use to a single place by making __set_robust_list_avail available
unconditionally, but as a constant for __ASSUME_SET_ROBUST_LIST. This
is the pattern we used elsewhere (e.g. for have_cloexec).
Thanks,
Florian
More information about the Libc-alpha
mailing list