This is the mail archive of the
mailing list for the glibc project.
Re: [PATCH 3/3] Update sysvipc kernel-features.h files for Linux 5.1
On 15/10/2019 16:10, Paul Clarke wrote:
> On 10/11/19 2:15 PM, Adhemerval Zanella wrote:
>> Linux 5.1 adds missing SySV IPC syscalls to the syscall table for
>> remanining one that still uses the ipc syscall on glibc (m68k, mips-o32,
>> powerpc, s390, sh, and sparc32). However the newly added direct ipc
>> syscall are different than the old ones:
>> 1. They do not expect IPC_64, meaning __IPC_64 should be set to zero
>> when new syscalls are used. And new syscalls can not be used
>> for compat functions like __old_semctl (to emulated old sysvipc it
>> requires to use the old __NR_ipc syscall without __IPC_64).
>> Thus IPC_64 is redefined for newer kernels on affected ABIs.
>> 2. semtimedop and semop does not exist on 32-bit ABIs (only
>> semtimedop_time64 is supplied). The provided syscall wrappers only
>> uses the wire-up syscall if __NR_semtimedop and __NR_semop are
>> also defined.
>> Checked on x86_64-linux-gnu and i686-linux-gnu on both a 4.15 kernel
>> configure with default options and sysvipc tests on a 5.1.2 kernel with
>> I also checked the sysvipc tests on alpha, hppa, mips (32, 64, and n32),
>> powerpc (32, 64, 64le), sparc (32, 64), and s390 (32, 64).
> Thanks for putting this patchset together, Adhemerval!
> I tested a bare minimum to see if the goal for my original patches had been met, and indeed it has. A no-op (error case) msgctl() is about 7% faster. I added a similar test for semop, too, since that's a special case, and that's about 10% faster.
> I don't know if my trivial testing qualifies for a "Tested-by", but you are welcome to use this as such if you wish:
> Tested-by: Paul A. Clarke <firstname.lastname@example.org>
Thanks for checking on powerpc, I also rechecked on i686-linux
as well. I will commit this shortly.