From: "André Almeida" <andrealmeid@igalia.com>
To: Masami Hiramatsu <mhiramat@kernel.org>, Arnd Bergmanon <arnd@arndb.de>
Cc: "Christian Brauner" <brauner@kernel.org>,
linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org,
kernel-dev@igalia.com,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
linux-alpha@vger.kernel.org, linux-s390@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, soc@lists.linux.dev,
linux-mips@vger.kernel.org, sparclinux@vger.kernel.org,
"André Almeida" <andrealmeid@igalia.com>
Subject: [PATCH v7 04/13] arm: Use the common syscall table
Date: Thu, 17 Sep 2026 20:46:07 -0300 [thread overview]
Message-ID: <20260917-tonyk-syscall_table-v7-4-f4cd8f8e3265@igalia.com> (raw)
In-Reply-To: <20260917-tonyk-syscall_table-v7-0-f4cd8f8e3265@igalia.com>
Remove some of the duplicated code by using the common syscall number
table.
Signed-off-by: André Almeida <andrealmeid@igalia.com>
---
Changes from v6:
- Added back syscalls from 403 to 423 to local table. arm32 can't use the
common table for those syscalls, because arm doesn't implements compat_
entry points for syscalls like pselect6, ppoll, etc., and OABI uses compat_
entry points when it's available, so this would cause a build error.
---
arch/arm/tools/Makefile | 14 ++++++++-----
arch/arm/tools/syscall.tbl | 49 ----------------------------------------------
2 files changed, 9 insertions(+), 54 deletions(-)
diff --git a/arch/arm/tools/Makefile b/arch/arm/tools/Makefile
index 28b6da8ac5f6..b7d8d96ab015 100644
--- a/arch/arm/tools/Makefile
+++ b/arch/arm/tools/Makefile
@@ -12,6 +12,8 @@ syshdr := $(srctree)/scripts/syscallhdr.sh
sysnr := $(src)/syscallnr.sh
systbl := $(srctree)/scripts/syscalltbl.sh
syscall := $(src)/syscall.tbl
+syscalltbl_common := $(srctree)/scripts/syscall_common.tbl
+abis := common,clone3
gen-y := $(gen)/calls-oabi.S
gen-y += $(gen)/calls-eabi.S
@@ -38,20 +40,22 @@ $(kapi)/mach-types.h: $(src)/gen-mach-types $(src)/mach-types FORCE
$(call if_changed,gen_mach)
quiet_cmd_syshdr = SYSHDR $@
- cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --abis common,$* \
+ cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --abis $(abis),$* \
+ --common-tbl $(syscalltbl_common) \
--offset __NR_SYSCALL_BASE $< $@
quiet_cmd_systbl = SYSTBL $@
- cmd_systbl = $(CONFIG_SHELL) $(systbl) --abis common,$* $< $@
+ cmd_systbl = $(CONFIG_SHELL) $(systbl) --abis $(abis),$* \
+ --common-tbl $(syscalltbl_common) $< $@
quiet_cmd_sysnr = SYSNR $@
cmd_sysnr = $(CONFIG_SHELL) $(sysnr) $< $@
-$(uapi)/unistd-%.h: $(syscall) $(syshdr) FORCE
+$(uapi)/unistd-%.h: $(syscall) $(syscalltbl_common) $(syshdr) FORCE
$(call if_changed,syshdr)
-$(kapi)/unistd-nr.h: $(syscall) $(sysnr) FORCE
+$(kapi)/unistd-nr.h: $(syscalltbl_common) $(sysnr) FORCE
$(call if_changed,sysnr)
-$(gen)/calls-%.S: $(syscall) $(systbl) FORCE
+$(gen)/calls-%.S: $(syscall) $(syscalltbl_common) $(systbl) FORCE
$(call if_changed,systbl)
diff --git a/arch/arm/tools/syscall.tbl b/arch/arm/tools/syscall.tbl
index 55717ed32c27..bccded328911 100644
--- a/arch/arm/tools/syscall.tbl
+++ b/arch/arm/tools/syscall.tbl
@@ -438,52 +438,3 @@
421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
422 common futex_time64 sys_futex
423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
-424 common pidfd_send_signal sys_pidfd_send_signal
-425 common io_uring_setup sys_io_uring_setup
-426 common io_uring_enter sys_io_uring_enter
-427 common io_uring_register sys_io_uring_register
-428 common open_tree sys_open_tree
-429 common move_mount sys_move_mount
-430 common fsopen sys_fsopen
-431 common fsconfig sys_fsconfig
-432 common fsmount sys_fsmount
-433 common fspick sys_fspick
-434 common pidfd_open sys_pidfd_open
-435 common clone3 sys_clone3
-436 common close_range sys_close_range
-437 common openat2 sys_openat2
-438 common pidfd_getfd sys_pidfd_getfd
-439 common faccessat2 sys_faccessat2
-440 common process_madvise sys_process_madvise
-441 common epoll_pwait2 sys_epoll_pwait2
-442 common mount_setattr sys_mount_setattr
-443 common quotactl_fd sys_quotactl_fd
-444 common landlock_create_ruleset sys_landlock_create_ruleset
-445 common landlock_add_rule sys_landlock_add_rule
-446 common landlock_restrict_self sys_landlock_restrict_self
-# 447 reserved for memfd_secret
-448 common process_mrelease sys_process_mrelease
-449 common futex_waitv sys_futex_waitv
-450 common set_mempolicy_home_node sys_set_mempolicy_home_node
-451 common cachestat sys_cachestat
-452 common fchmodat2 sys_fchmodat2
-453 common map_shadow_stack sys_map_shadow_stack
-454 common futex_wake sys_futex_wake
-455 common futex_wait sys_futex_wait
-456 common futex_requeue sys_futex_requeue
-457 common statmount sys_statmount
-458 common listmount sys_listmount
-459 common lsm_get_self_attr sys_lsm_get_self_attr
-460 common lsm_set_self_attr sys_lsm_set_self_attr
-461 common lsm_list_modules sys_lsm_list_modules
-462 common mseal sys_mseal
-463 common setxattrat sys_setxattrat
-464 common getxattrat sys_getxattrat
-465 common listxattrat sys_listxattrat
-466 common removexattrat sys_removexattrat
-467 common open_tree_attr sys_open_tree_attr
-468 common file_getattr sys_file_getattr
-469 common file_setattr sys_file_setattr
-470 common listns sys_listns
-471 common rseq_slice_yield sys_rseq_slice_yield
-472 common fchroot sys_fchroot
--
2.55.0
next prev parent reply other threads:[~2026-09-17 23:46 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-17 23:46 [PATCH v7 00/13] syscalls: Add a shared table for all archs André Almeida
2026-09-17 23:46 ` [PATCH v7 01/13] syscalls: Make --abis parsing more robust André Almeida
2026-09-17 23:46 ` [PATCH v7 02/13] syscalls: Create unified partial table for all archs André Almeida
2026-09-17 23:46 ` [PATCH v7 03/13] scripts/syscall.tbl: Use the common table André Almeida
2026-09-18 6:34 ` Arnd Bergmann
2026-09-18 19:58 ` André Almeida
2026-09-17 23:46 ` André Almeida [this message]
2026-09-18 6:22 ` [PATCH v7 04/13] arm: Use the common syscall table Arnd Bergmann
2026-09-18 20:10 ` André Almeida
2026-09-17 23:46 ` [PATCH v7 05/13] s390: " André Almeida
2026-09-17 23:46 ` [PATCH v7 06/13] sparc: " André Almeida
2026-09-17 23:46 ` [PATCH v7 07/13] mips: Remove duplicated syscallnr.sh André Almeida
2026-09-17 23:46 ` [PATCH v7 08/13] mips: Get rid of custom mips ABIs for syscall tables André Almeida
2026-09-17 23:46 ` [PATCH v7 09/13] mips: Use the common syscall table André Almeida
2026-09-18 6:56 ` Arnd Bergmann
2026-09-17 23:46 ` [PATCH v7 10/13] syscalls: Add an option for offsetting the common table André Almeida
2026-09-17 23:46 ` [PATCH v7 11/13] alpha: Define entry point for set_mempolicy_home_node syscall André Almeida
2026-09-18 11:36 ` Magnus Lindholm
2026-09-17 23:46 ` [PATCH v7 12/13] alpha: Remove alpha_ prefix from custom syscall entries André Almeida
2026-09-18 10:54 ` Magnus Lindholm
2026-09-18 20:11 ` André Almeida
2026-09-17 23:46 ` [PATCH v7 13/13] alpha: Use the common syscall table André Almeida
2026-09-18 10:57 ` Magnus Lindholm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260917-tonyk-syscall_table-v7-4-f4cd8f8e3265@igalia.com \
--to=andrealmeid@igalia.com \
--cc=arnd@arndb.de \
--cc=brauner@kernel.org \
--cc=kernel-dev@igalia.com \
--cc=linux-alpha@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=soc@lists.linux.dev \
--cc=sparclinux@vger.kernel.org \
--cc=tsbogend@alpha.franken.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox