[PATCH 2/2] Revert "linux: Move xmknod{at} to compat symbols"
Adhemerval Zanella
adhemerval.zanella@linaro.org
Mon Oct 26 16:24:23 GMT 2020
On 26/10/2020 09:56, Florian Weimer wrote:
> * Adhemerval Zanella:
>
>> On 23/10/2020 14:18, Florian Weimer wrote:
>>> * Adhemerval Zanella:
>>>
>>>>>> If I recall correctly they are still required for Hurd, but I double
>>>>>> check. In fact I think we should remove all the io/*xstat* and
>>>>>> io/*xmknod* since there is no point in providing them as generic
>>>>>> interfaces.
>>>>>
>>>>> Then I think you should add the missing libc_hidden_defs instead (to the
>>>>> Linux implementations). The present state is inconsistent and
>>>>> potentially brittle.
>>>>
>>>> Why do we need to add the libc_hidden_defs for Linux? Currently they are not
>>>> used internally anymore (both xmknod and xmknodat will call __mknodat).
>>>
>>> I think they always have to come in pairs, conceptually. Some pairings
>>> work by accident. I think the aliasing could be implemented in the
>>> other direction, then this use case (public symbol, no internal
>>> references) would break, but the other one (unused export, internal
>>> references) would work.
>
>> For this specific case, the libc_hidden_proto on include/sys/stat.h are
>> only defined for NO_RTLD_HIDDEN, which is only define for Hurd. So I
>> don't think there is the need to add the libc_hidden_def for the Linux
>> implementation.
>>
>> This is also for the xstat symbols.
>
> Hmm. I really don't like this. But we can consider it separately from
> the (partial) revert.
Could we track this with a different patch? I would like to close this
and the xstat issue.
More information about the Libc-alpha
mailing list