This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: _ioperm support for Arm
On 29/05/2019 15:44, Florian Weimer wrote:
> * Adhemerval Zanella:
>
> [sysctl deprecation]
>
>>> The linker warnings happen only on some architectures right now (which
>>> use the “generic” Linux system call ABI).
>>
>> This is standard ENOSYS stub we emit for non-implemented symbols. I think
>> we will need both add __attribute_deprecated__ and create a new stub with
>> a different warning message (maybe "symbol is deprecated and it will be
>> removed in future versions").
>
> We have an explicit sysdeps/unix/sysv/linux/generic/sysctl.c override,
> though. I don't know why it was done this way. I think it predates the
> attempt to deprecate sysctl with the addition of the x32 ABI.
My understanding is the linux/generic is aiming to mimic the current Linux
UAPI, so a new port would require to just add the folder on its Implies
folder.
>
> Anyway, it doesn't matter for the upcoming deprecation.
I would suggest to add a new stub, stub_deprecate, which similar to
stub_warning emit a linker message when the symbol is linked to state
is not safe to rely on it and most likely it will be removed in future
glibc version. Combined with __attribute_deprecated__ it should give
users enough warnings to fix it.
What I am not sure is for newer ports, do we really need to export
the symbol as ENOSYS?