On Thu, Sep 5, 2019 at 5:24 PM Arnd Bergmann arnd@arndb.de wrote:
diff --git a/arch/sparc/kernel/sys_sparc_64.c b/arch/sparc/kernel/sys_sparc_64.c index ccc88926bc00..5ad0494df367 100644 --- a/arch/sparc/kernel/sys_sparc_64.c +++ b/arch/sparc/kernel/sys_sparc_64.c @@ -340,21 +340,21 @@ SYSCALL_DEFINE6(sparc_ipc, unsigned int, call, int, first, unsigned long, second if (call <= SEMTIMEDOP) { switch (call) { case SEMOP:
err = sys_semtimedop(first, ptr,
(unsigned int)second, NULL);
err = ksys_semtimedop(first, ptr,
(unsigned int)second, NULL); goto out;
The zero-day bot found a link error in sparc64 allnoconfig:
arch/sparc/kernel/sys_sparc_64.o: In function `__se_sys_sparc_ipc':
sys_sparc_64.c:(.text+0x724): undefined reference to `ksys_semtimedop' sys_sparc_64.c:(.text+0x76c): undefined reference to `ksys_old_msgctl' sys_sparc_64.c:(.text+0x7a8): undefined reference to `ksys_semget' sys_sparc_64.c:(.text+0x7c8): undefined reference to `ksys_old_semctl' sys_sparc_64.c:(.text+0x7e4): undefined reference to `ksys_msgsnd' sys_sparc_64.c:(.text+0x7fc): undefined reference to `ksys_shmget' sys_sparc_64.c:(.text+0x808): undefined reference to `ksys_shmdt'
sys_sparc_64.c:(.text+0x828): undefined reference to `ksys_semtimedop'
sys_sparc_64.c:(.text+0x844): undefined reference to `ksys_old_shmctl' sys_sparc_64.c:(.text+0x858): undefined reference to `ksys_msgget' sys_sparc_64.c:(.text+0x86c): undefined reference to `ksys_msgrcv'
I've added this hunk to my patch and plan to send both fixes to Linus in the next few days, after I get a positive report from the bot as well:
--- a/arch/sparc/kernel/sys_sparc_64.c +++ b/arch/sparc/kernel/sys_sparc_64.c @@ -336,6 +336,9 @@ SYSCALL_DEFINE6(sparc_ipc, unsigned int, call, int, first, unsigned long, second { long err;
+ if (!IS_ENABLED(CONFIG_SYSVIPC)) + return -ENOSYS; + /* No need for backward compatibility. We can start fresh... */
if (call <= SEMTIMEDOP) { switch (call) {