On Thu, Sep 5, 2019 at 9:39 PM Arnd Bergmann <arnd@xxxxxxxx> wrote: > > Matt bisected a sparc64 specific issue with semctl, shmctl and msgctl > to a commit from my y2038 series in linux-5.1, as I missed the custom > sys_ipc() wrapper that sparc64 uses in place of the generic version that > I patched. > > The problem is that the sys_{sem,shm,msg}ctl() functions in the kernel > now do not allow being called with the IPC_64 flag any more, resulting > in a -EINVAL error when they don't recognize the command. > > Instead, the correct way to do this now is to call the internal > ksys_old_{sem,shm,msg}ctl() functions to select the API version. > > As we generally move towards these functions anyway, change all of > sparc_ipc() to consistently use those in place of the sys_*() versions, > and move the required ksys_*() declarations into linux/syscalls.h > > Reported-by: Matt Turner <mattst88@xxxxxxxxx> > Fixes: 275f22148e87 ("ipc: rename old-style shmctl/semctl/msgctl syscalls") > Cc: stable@xxxxxxxxxxxxxxx > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Not Matt, but this patch fixes util-linux.git ipcs test-suite (make check) regression for me on current sparc64 git kernel (5.3.0-rc7), which was broken somewhere in between 4.19 (debian unstable kernel) and 5.3-rcX. Thanks! PS: wanted to bisect kernel, but Matt did it first.