]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
parisc: Avoid compat syscalls when COMPAT=n
authorHelge Deller <deller@gmx.de>
Tue, 7 Apr 2026 22:01:28 +0000 (00:01 +0200)
committerHelge Deller <deller@gmx.de>
Fri, 17 Apr 2026 13:46:45 +0000 (15:46 +0200)
Drop unnecessary code and syscall tables when we run a 64-bit
kernel with conpat mode disabled.

Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/kernel/syscall.S

index f58c4bccfbce0e62b88c325ab061de6f387f67eb..e11c88c34eb2af3ea2cb55eb6cc9cc2df0b8c767 100644 (file)
@@ -241,7 +241,7 @@ linux_gateway_entry:
        /* Note!  We cannot use the syscall table that is mapped
        nearby since the gateway page is mapped execute-only. */
 
-#ifdef CONFIG_64BIT
+#ifdef CONFIG_COMPAT
        ldil    L%sys_call_table, %r1
        or,ev   %r2,%r2,%r2
        ldil    L%sys_call_table64, %r1
@@ -250,7 +250,7 @@ linux_gateway_entry:
        ldo     R%sys_call_table64(%r1), %r19
 #else
        load32  sys_call_table, %r19
-#endif 
+#endif
        comiclr,>>      __NR_Linux_syscalls, %r20, %r0
        b,n     .Lsyscall_nosys
        
@@ -374,7 +374,7 @@ tracesys_next:
        /* Note!  We cannot use the syscall table that is mapped
        nearby since the gateway page is mapped execute-only. */
 
-#ifdef CONFIG_64BIT
+#ifdef CONFIG_COMPAT
        LDREG   TASK_PT_GR30(%r1), %r19         /* get users sp back */
        extrd,u %r19,63,1,%r2                   /* W hidden in bottom bit */
 
@@ -1326,16 +1326,19 @@ ENTRY(lws_table)
 END(lws_table)
        /* End of lws table */
 
-#ifdef CONFIG_64BIT
+#ifdef CONFIG_COMPAT
 #define __SYSCALL_WITH_COMPAT(nr, native, compat)      __SYSCALL(nr, compat)
 #else
 #define __SYSCALL_WITH_COMPAT(nr, native, compat)      __SYSCALL(nr, native)
 #endif
 #define __SYSCALL(nr, entry)   ASM_ULONG_INSN entry
+
        .align 8
 ENTRY(sys_call_table)
        .export sys_call_table,data
+#if defined(CONFIG_COMPAT) || !defined(CONFIG_64BIT)
 #include <asm/syscall_table_32.h>    /* 32-bit syscalls */
+#endif
 END(sys_call_table)
 
 #ifdef CONFIG_64BIT