[PATCH v4 12/12] alpha: Use the common syscall table

From: André Almeida

Date: Tue Aug 11 2026 - 23:33:59 EST


Remove some of the duplicated code by using the common syscall number
table.

Signed-off-by: André Almeida <andrealmeid@xxxxxxxxxx>
---
arch/alpha/kernel/syscalls/Makefile | 10 +++++--
arch/alpha/kernel/syscalls/syscall.tbl | 48 ----------------------------------
arch/alpha/kernel/systbls.S | 1 +
scripts/syscall_common.tbl | 1 +
4 files changed, 10 insertions(+), 50 deletions(-)

diff --git a/arch/alpha/kernel/syscalls/Makefile b/arch/alpha/kernel/syscalls/Makefile
index b265e4bc16c2..62ca5553a59c 100644
--- a/arch/alpha/kernel/syscalls/Makefile
+++ b/arch/alpha/kernel/syscalls/Makefile
@@ -7,12 +7,18 @@ $(shell mkdir -p $(uapi) $(kapi))
syscall := $(src)/syscall.tbl
syshdr := $(srctree)/scripts/syscallhdr.sh
systbl := $(srctree)/scripts/syscalltbl.sh
+systbl_common := $(srctree)/scripts/syscall_common.tbl
+abis := common,alpha

quiet_cmd_syshdr = SYSHDR $@
- cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --emit-nr $< $@
+ cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --emit-nr \
+ --common-tbl $(systbl_common) --common-offset 110 \
+ --abis $(abis) $< $@

quiet_cmd_systbl = SYSTBL $@
- cmd_systbl = $(CONFIG_SHELL) $(systbl) $< $@
+ cmd_systbl = $(CONFIG_SHELL) $(systbl) \
+ --common-tbl $(systbl_common) --common-offset 110 \
+ --abis $(abis) $< $@

$(uapi)/unistd_32.h: $(syscall) $(syshdr) FORCE
$(call if_changed,syshdr)
diff --git a/arch/alpha/kernel/syscalls/syscall.tbl b/arch/alpha/kernel/syscalls/syscall.tbl
index 25180953c3c1..4441bc596317 100644
--- a/arch/alpha/kernel/syscalls/syscall.tbl
+++ b/arch/alpha/kernel/syscalls/syscall.tbl
@@ -463,51 +463,3 @@
532 common getppid sys_getppid
# all other architectures have common numbers for new syscall, alpha
# is the exception.
-534 common pidfd_send_signal sys_pidfd_send_signal
-535 common io_uring_setup sys_io_uring_setup
-536 common io_uring_enter sys_io_uring_enter
-537 common io_uring_register sys_io_uring_register
-538 common open_tree sys_open_tree
-539 common move_mount sys_move_mount
-540 common fsopen sys_fsopen
-541 common fsconfig sys_fsconfig
-542 common fsmount sys_fsmount
-543 common fspick sys_fspick
-544 common pidfd_open sys_pidfd_open
-545 common clone3 alpha_clone3
-546 common close_range sys_close_range
-547 common openat2 sys_openat2
-548 common pidfd_getfd sys_pidfd_getfd
-549 common faccessat2 sys_faccessat2
-550 common process_madvise sys_process_madvise
-551 common epoll_pwait2 sys_epoll_pwait2
-552 common mount_setattr sys_mount_setattr
-553 common quotactl_fd sys_quotactl_fd
-554 common landlock_create_ruleset sys_landlock_create_ruleset
-555 common landlock_add_rule sys_landlock_add_rule
-556 common landlock_restrict_self sys_landlock_restrict_self
-# 557 reserved for memfd_secret
-558 common process_mrelease sys_process_mrelease
-559 common futex_waitv sys_futex_waitv
-560 common set_mempolicy_home_node sys_set_mempolicy_home_node
-561 common cachestat sys_cachestat
-562 common fchmodat2 sys_fchmodat2
-563 common map_shadow_stack sys_map_shadow_stack
-564 common futex_wake sys_futex_wake
-565 common futex_wait sys_futex_wait
-566 common futex_requeue sys_futex_requeue
-567 common statmount sys_statmount
-568 common listmount sys_listmount
-569 common lsm_get_self_attr sys_lsm_get_self_attr
-570 common lsm_set_self_attr sys_lsm_set_self_attr
-571 common lsm_list_modules sys_lsm_list_modules
-572 common mseal sys_mseal
-573 common setxattrat sys_setxattrat
-574 common getxattrat sys_getxattrat
-575 common listxattrat sys_listxattrat
-576 common removexattrat sys_removexattrat
-577 common open_tree_attr sys_open_tree_attr
-578 common file_getattr sys_file_getattr
-579 common file_setattr sys_file_setattr
-580 common listns sys_listns
-581 common rseq_slice_yield sys_rseq_slice_yield
diff --git a/arch/alpha/kernel/systbls.S b/arch/alpha/kernel/systbls.S
index 68f3e4f329eb..9a67d29f7818 100644
--- a/arch/alpha/kernel/systbls.S
+++ b/arch/alpha/kernel/systbls.S
@@ -7,6 +7,7 @@

#include <asm/unistd.h>

+#define __SYSCALL_WITH_COMPAT(nr, native, compat) __SYSCALL(nr, native)
#define __SYSCALL(nr, entry) .quad entry
.data
.align 3
diff --git a/scripts/syscall_common.tbl b/scripts/syscall_common.tbl
index 81e326a8172f..2fcc3b8f53a5 100644
--- a/scripts/syscall_common.tbl
+++ b/scripts/syscall_common.tbl
@@ -45,6 +45,7 @@
434 common pidfd_open sys_pidfd_open
435 clone3 clone3 sys_clone3
435 __clone3 clone3 __sys_clone3
+435 alpha clone3 alpha_clone3
436 common close_range sys_close_range
437 common openat2 sys_openat2
438 common pidfd_getfd sys_pidfd_getfd

--
2.55.0