Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom de Vries via Gdb-patches <gdb-patches@sourceware.org>
To: Tom Tromey <tom@tromey.com>,
	Tom de Vries via Gdb-patches <gdb-patches@sourceware.org>
Cc: Simon Marchi <simark@simark.ca>
Subject: [committed][gdb/tdep] Add gdb/syscalls/update-linux-from-src.sh
Date: Wed, 18 May 2022 11:58:08 +0200	[thread overview]
Message-ID: <d282674d-0e44-0944-4500-bdedfc4eca6d@suse.de> (raw)
In-Reply-To: <87ee0tea14.fsf@tromey.com>

[-- Attachment #1: Type: text/plain, Size: 1773 bytes --]

[ was : Re: [PATCH][gdb] Update syscalls/{amd64,i386}-linux.xml ]

On 5/16/22 18:07, Tom Tromey wrote:
>>>>>> "Tom" == Tom de Vries via Gdb-patches <gdb-patches@sourceware.org> writes:
> 
> Tom> On 5/9/22 12:39, Tom de Vries wrote:
>>> [ FWIW, it seems the linux kernel migrated to some syscall.tbl
>>> approach, and perhaps generating from there could be an option. ]
> 
> Tom> Well, I gave that a try, in a separate script update-linux-2.sh
> Tom> (haven't though of a good name yet).
> 

I've renamed to update-linux-from-src.sh.

> Tom> Any comments?
> 
> Maybe it should just replace update-linux.sh?
> 

ATM, not all archs use this .tbl format, notable exception being aarch64.

Besides, for the archs where the .tbl file is available, I like the 
ability to double check.

This new script is more powerful because it can generate for multiple 
architectures, but in doing so it does interpretation of the .tbl files 
in the kernel sources: which file to pick, which abi.

The update-linux.sh script uses the documented interface to syscalls: 
sys/syscalls.h  It's just that you need to run it on the particular 
platform (or, using cross compiler + sysroot), but I imagine maintainers 
of particular targets have this available.

> Tom> In particular, there are a few new "reserved<n>" and "unused<n>"
> Tom> entries that don't look problematic to me, but perhaps these should be
> Tom> filtered out.
> 
> I think it seems better to skip them.
> 

Done.

> Anyway if this is the direction Linux is going, like if this .tbl file
> is some authoritative source, 

Yes, the kernel sources use scripts to generate things like syscall 
headers from these .tbl files.

> then I think it makes the most sense for
> gdb to follow.

Ack, committed as attached.

Thanks,
- Tom

[-- Attachment #2: 0001-gdb-tdep-Add-gdb-syscalls-update-linux-from-src.sh.patch --]
[-- Type: text/x-patch, Size: 74461 bytes --]

[gdb/tdep] Add gdb/syscalls/update-linux-from-src.sh

Add a new script gdb/syscalls/update-linux-from-src.sh, that can be used to
generate *-linux.xml.in files from linux kernel sources, like so:
...
$ ./update-linux-from-src.sh ~/upstream/linux-stable.git
Skipping aarch64-linux.xml.in, no syscall.tbl
Generating amd64-linux.xml.in
Skipping arm-linux.xml.in, use arm-linux.py instead
Skipping bfin-linux.xml.in, no longer supported
Generating i386-linux.xml.in
Generating mips-n32-linux.xml.in
Generating mips-n64-linux.xml.in
Generating mips-o32-linux.xml.in
Generating ppc64-linux.xml.in
Generating ppc-linux.xml.in
Generating s390-linux.xml.in
Generating s390x-linux.xml.in
Generating sparc64-linux.xml.in
Generating sparc-linux.xml.in
...

Update *-linux.xml.in and *-linux.xml using linux kernel tag v5.18-rc6.

---
 gdb/syscalls/amd64-linux.xml          |   2 +-
 gdb/syscalls/amd64-linux.xml.in       |   2 +-
 gdb/syscalls/i386-linux.xml           |   2 +-
 gdb/syscalls/i386-linux.xml.in        |   2 +-
 gdb/syscalls/mips-n32-linux.xml       |  82 ++++++++++++++++-
 gdb/syscalls/mips-n32-linux.xml.in    |  83 ++++++++++++++++-
 gdb/syscalls/mips-n64-linux.xml       |  60 +++++++++++-
 gdb/syscalls/mips-n64-linux.xml.in    |  61 +++++++++++-
 gdb/syscalls/mips-o32-linux.xml       |  90 +++++++++++++++++-
 gdb/syscalls/mips-o32-linux.xml.in    |  91 +++++++++++++++++-
 gdb/syscalls/ppc-linux.xml            |   5 +-
 gdb/syscalls/ppc-linux.xml.in         |   5 +-
 gdb/syscalls/ppc64-linux.xml          |   5 +-
 gdb/syscalls/ppc64-linux.xml.in       |   5 +-
 gdb/syscalls/s390-linux.xml           |  72 ++++++++++++++-
 gdb/syscalls/s390-linux.xml.in        |  73 ++++++++++++++-
 gdb/syscalls/s390x-linux.xml          |  53 ++++++++++-
 gdb/syscalls/s390x-linux.xml.in       |  54 ++++++++++-
 gdb/syscalls/sparc-linux.xml          |  96 ++++++++++++++++++-
 gdb/syscalls/sparc-linux.xml.in       |  99 +++++++++++++++++++-
 gdb/syscalls/sparc64-linux.xml        |  77 +++++++++++++++-
 gdb/syscalls/sparc64-linux.xml.in     |  80 +++++++++++++++-
 gdb/syscalls/update-linux-from-src.sh | 169 ++++++++++++++++++++++++++++++++++
 23 files changed, 1230 insertions(+), 38 deletions(-)

diff --git a/gdb/syscalls/amd64-linux.xml b/gdb/syscalls/amd64-linux.xml
index 231308b72b7..cf2b5c88d54 100644
--- a/gdb/syscalls/amd64-linux.xml
+++ b/gdb/syscalls/amd64-linux.xml
@@ -7,7 +7,7 @@
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/x86/entry/syscalls/syscall_64.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
diff --git a/gdb/syscalls/amd64-linux.xml.in b/gdb/syscalls/amd64-linux.xml.in
index 404d445988e..e2c8450352f 100644
--- a/gdb/syscalls/amd64-linux.xml.in
+++ b/gdb/syscalls/amd64-linux.xml.in
@@ -9,7 +9,7 @@
 
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/x86/entry/syscalls/syscall_64.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
diff --git a/gdb/syscalls/i386-linux.xml b/gdb/syscalls/i386-linux.xml
index c4b28111388..cff0e04464a 100644
--- a/gdb/syscalls/i386-linux.xml
+++ b/gdb/syscalls/i386-linux.xml
@@ -7,7 +7,7 @@
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/x86/entry/syscalls/syscall_32.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
diff --git a/gdb/syscalls/i386-linux.xml.in b/gdb/syscalls/i386-linux.xml.in
index 549b59565f3..3814acd5761 100644
--- a/gdb/syscalls/i386-linux.xml.in
+++ b/gdb/syscalls/i386-linux.xml.in
@@ -9,7 +9,7 @@
 
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/x86/entry/syscalls/syscall_32.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
diff --git a/gdb/syscalls/mips-n32-linux.xml b/gdb/syscalls/mips-n32-linux.xml
index d6cffc4e5aa..47a8204dfea 100644
--- a/gdb/syscalls/mips-n32-linux.xml
+++ b/gdb/syscalls/mips-n32-linux.xml
@@ -6,8 +6,8 @@
      are permitted in any medium without royalty provided the copyright
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/mips/include/asm/unistd.h
+
+     arch/mips/kernel/syscalls/syscall_n32.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -188,7 +188,6 @@
   <syscall name="getpmsg" number="6174"/>
   <syscall name="putpmsg" number="6175"/>
   <syscall name="afs_syscall" number="6176"/>
-  <syscall name="reserved177" number="6177"/>
   <syscall name="gettid" number="6178"/>
   <syscall name="readahead" number="6179" groups="descriptor"/>
   <syscall name="setxattr" number="6180" groups="file"/>
@@ -204,7 +203,6 @@
   <syscall name="lremovexattr" number="6190" groups="file"/>
   <syscall name="fremovexattr" number="6191" groups="descriptor"/>
   <syscall name="tkill" number="6192" groups="signal"/>
-  <syscall name="reserved193" number="6193"/>
   <syscall name="futex" number="6194"/>
   <syscall name="sched_setaffinity" number="6195"/>
   <syscall name="sched_getaffinity" number="6196"/>
@@ -313,4 +311,80 @@
   <syscall name="fanotify_init" number="6300" groups="descriptor"/>
   <syscall name="fanotify_mark" number="6301" groups="descriptor,file"/>
   <syscall name="prlimit64" number="6302"/>
+  <syscall name="name_to_handle_at" number="6303" groups="descriptor,file"/>
+  <syscall name="open_by_handle_at" number="6304" groups="descriptor"/>
+  <syscall name="clock_adjtime" number="6305"/>
+  <syscall name="syncfs" number="6306" groups="descriptor"/>
+  <syscall name="sendmmsg" number="6307" groups="network"/>
+  <syscall name="setns" number="6308" groups="descriptor"/>
+  <syscall name="process_vm_readv" number="6309"/>
+  <syscall name="process_vm_writev" number="6310"/>
+  <syscall name="kcmp" number="6311"/>
+  <syscall name="finit_module" number="6312" groups="descriptor"/>
+  <syscall name="sched_setattr" number="6313"/>
+  <syscall name="sched_getattr" number="6314"/>
+  <syscall name="renameat2" number="6315"/>
+  <syscall name="seccomp" number="6316"/>
+  <syscall name="getrandom" number="6317"/>
+  <syscall name="memfd_create" number="6318"/>
+  <syscall name="bpf" number="6319"/>
+  <syscall name="execveat" number="6320"/>
+  <syscall name="userfaultfd" number="6321"/>
+  <syscall name="membarrier" number="6322"/>
+  <syscall name="mlock2" number="6323"/>
+  <syscall name="copy_file_range" number="6324"/>
+  <syscall name="preadv2" number="6325"/>
+  <syscall name="pwritev2" number="6326"/>
+  <syscall name="pkey_mprotect" number="6327"/>
+  <syscall name="pkey_alloc" number="6328"/>
+  <syscall name="pkey_free" number="6329"/>
+  <syscall name="statx" number="6330"/>
+  <syscall name="rseq" number="6331"/>
+  <syscall name="io_pgetevents" number="6332"/>
+  <syscall name="clock_gettime64" number="6403"/>
+  <syscall name="clock_settime64" number="6404"/>
+  <syscall name="clock_adjtime64" number="6405"/>
+  <syscall name="clock_getres_time64" number="6406"/>
+  <syscall name="clock_nanosleep_time64" number="6407"/>
+  <syscall name="timer_gettime64" number="6408"/>
+  <syscall name="timer_settime64" number="6409"/>
+  <syscall name="timerfd_gettime64" number="6410"/>
+  <syscall name="timerfd_settime64" number="6411"/>
+  <syscall name="utimensat_time64" number="6412"/>
+  <syscall name="pselect6_time64" number="6413"/>
+  <syscall name="ppoll_time64" number="6414"/>
+  <syscall name="io_pgetevents_time64" number="6416"/>
+  <syscall name="recvmmsg_time64" number="6417"/>
+  <syscall name="mq_timedsend_time64" number="6418"/>
+  <syscall name="mq_timedreceive_time64" number="6419"/>
+  <syscall name="semtimedop_time64" number="6420"/>
+  <syscall name="rt_sigtimedwait_time64" number="6421"/>
+  <syscall name="futex_time64" number="6422"/>
+  <syscall name="sched_rr_get_interval_time64" number="6423"/>
+  <syscall name="pidfd_send_signal" number="6424"/>
+  <syscall name="io_uring_setup" number="6425"/>
+  <syscall name="io_uring_enter" number="6426"/>
+  <syscall name="io_uring_register" number="6427"/>
+  <syscall name="open_tree" number="6428"/>
+  <syscall name="move_mount" number="6429"/>
+  <syscall name="fsopen" number="6430"/>
+  <syscall name="fsconfig" number="6431"/>
+  <syscall name="fsmount" number="6432"/>
+  <syscall name="fspick" number="6433"/>
+  <syscall name="pidfd_open" number="6434"/>
+  <syscall name="clone3" number="6435"/>
+  <syscall name="close_range" number="6436"/>
+  <syscall name="openat2" number="6437"/>
+  <syscall name="pidfd_getfd" number="6438"/>
+  <syscall name="faccessat2" number="6439"/>
+  <syscall name="process_madvise" number="6440"/>
+  <syscall name="epoll_pwait2" number="6441"/>
+  <syscall name="mount_setattr" number="6442"/>
+  <syscall name="quotactl_fd" number="6443"/>
+  <syscall name="landlock_create_ruleset" number="6444"/>
+  <syscall name="landlock_add_rule" number="6445"/>
+  <syscall name="landlock_restrict_self" number="6446"/>
+  <syscall name="process_mrelease" number="6448"/>
+  <syscall name="futex_waitv" number="6449"/>
+  <syscall name="set_mempolicy_home_node" number="6450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/mips-n32-linux.xml.in b/gdb/syscalls/mips-n32-linux.xml.in
index cbdf82e65a1..85528f296ee 100644
--- a/gdb/syscalls/mips-n32-linux.xml.in
+++ b/gdb/syscalls/mips-n32-linux.xml.in
@@ -8,11 +8,12 @@
 <!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
 
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/mips/include/asm/unistd.h
+
+     arch/mips/kernel/syscalls/syscall_n32.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="read" number="6000"/>
   <syscall name="write" number="6001"/>
@@ -191,7 +192,6 @@
   <syscall name="getpmsg" number="6174"/>
   <syscall name="putpmsg" number="6175"/>
   <syscall name="afs_syscall" number="6176"/>
-  <syscall name="reserved177" number="6177"/>
   <syscall name="gettid" number="6178"/>
   <syscall name="readahead" number="6179"/>
   <syscall name="setxattr" number="6180"/>
@@ -207,7 +207,6 @@
   <syscall name="lremovexattr" number="6190"/>
   <syscall name="fremovexattr" number="6191"/>
   <syscall name="tkill" number="6192"/>
-  <syscall name="reserved193" number="6193"/>
   <syscall name="futex" number="6194"/>
   <syscall name="sched_setaffinity" number="6195"/>
   <syscall name="sched_getaffinity" number="6196"/>
@@ -316,4 +315,80 @@
   <syscall name="fanotify_init" number="6300"/>
   <syscall name="fanotify_mark" number="6301"/>
   <syscall name="prlimit64" number="6302"/>
+  <syscall name="name_to_handle_at" number="6303"/>
+  <syscall name="open_by_handle_at" number="6304"/>
+  <syscall name="clock_adjtime" number="6305"/>
+  <syscall name="syncfs" number="6306"/>
+  <syscall name="sendmmsg" number="6307"/>
+  <syscall name="setns" number="6308"/>
+  <syscall name="process_vm_readv" number="6309"/>
+  <syscall name="process_vm_writev" number="6310"/>
+  <syscall name="kcmp" number="6311"/>
+  <syscall name="finit_module" number="6312"/>
+  <syscall name="sched_setattr" number="6313"/>
+  <syscall name="sched_getattr" number="6314"/>
+  <syscall name="renameat2" number="6315"/>
+  <syscall name="seccomp" number="6316"/>
+  <syscall name="getrandom" number="6317"/>
+  <syscall name="memfd_create" number="6318"/>
+  <syscall name="bpf" number="6319"/>
+  <syscall name="execveat" number="6320"/>
+  <syscall name="userfaultfd" number="6321"/>
+  <syscall name="membarrier" number="6322"/>
+  <syscall name="mlock2" number="6323"/>
+  <syscall name="copy_file_range" number="6324"/>
+  <syscall name="preadv2" number="6325"/>
+  <syscall name="pwritev2" number="6326"/>
+  <syscall name="pkey_mprotect" number="6327"/>
+  <syscall name="pkey_alloc" number="6328"/>
+  <syscall name="pkey_free" number="6329"/>
+  <syscall name="statx" number="6330"/>
+  <syscall name="rseq" number="6331"/>
+  <syscall name="io_pgetevents" number="6332"/>
+  <syscall name="clock_gettime64" number="6403"/>
+  <syscall name="clock_settime64" number="6404"/>
+  <syscall name="clock_adjtime64" number="6405"/>
+  <syscall name="clock_getres_time64" number="6406"/>
+  <syscall name="clock_nanosleep_time64" number="6407"/>
+  <syscall name="timer_gettime64" number="6408"/>
+  <syscall name="timer_settime64" number="6409"/>
+  <syscall name="timerfd_gettime64" number="6410"/>
+  <syscall name="timerfd_settime64" number="6411"/>
+  <syscall name="utimensat_time64" number="6412"/>
+  <syscall name="pselect6_time64" number="6413"/>
+  <syscall name="ppoll_time64" number="6414"/>
+  <syscall name="io_pgetevents_time64" number="6416"/>
+  <syscall name="recvmmsg_time64" number="6417"/>
+  <syscall name="mq_timedsend_time64" number="6418"/>
+  <syscall name="mq_timedreceive_time64" number="6419"/>
+  <syscall name="semtimedop_time64" number="6420"/>
+  <syscall name="rt_sigtimedwait_time64" number="6421"/>
+  <syscall name="futex_time64" number="6422"/>
+  <syscall name="sched_rr_get_interval_time64" number="6423"/>
+  <syscall name="pidfd_send_signal" number="6424"/>
+  <syscall name="io_uring_setup" number="6425"/>
+  <syscall name="io_uring_enter" number="6426"/>
+  <syscall name="io_uring_register" number="6427"/>
+  <syscall name="open_tree" number="6428"/>
+  <syscall name="move_mount" number="6429"/>
+  <syscall name="fsopen" number="6430"/>
+  <syscall name="fsconfig" number="6431"/>
+  <syscall name="fsmount" number="6432"/>
+  <syscall name="fspick" number="6433"/>
+  <syscall name="pidfd_open" number="6434"/>
+  <syscall name="clone3" number="6435"/>
+  <syscall name="close_range" number="6436"/>
+  <syscall name="openat2" number="6437"/>
+  <syscall name="pidfd_getfd" number="6438"/>
+  <syscall name="faccessat2" number="6439"/>
+  <syscall name="process_madvise" number="6440"/>
+  <syscall name="epoll_pwait2" number="6441"/>
+  <syscall name="mount_setattr" number="6442"/>
+  <syscall name="quotactl_fd" number="6443"/>
+  <syscall name="landlock_create_ruleset" number="6444"/>
+  <syscall name="landlock_add_rule" number="6445"/>
+  <syscall name="landlock_restrict_self" number="6446"/>
+  <syscall name="process_mrelease" number="6448"/>
+  <syscall name="futex_waitv" number="6449"/>
+  <syscall name="set_mempolicy_home_node" number="6450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/mips-n64-linux.xml b/gdb/syscalls/mips-n64-linux.xml
index c7507537118..d1c29840641 100644
--- a/gdb/syscalls/mips-n64-linux.xml
+++ b/gdb/syscalls/mips-n64-linux.xml
@@ -6,8 +6,8 @@
      are permitted in any medium without royalty provided the copyright
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/mips/include/asm/unistd.h
+
+     arch/mips/kernel/syscalls/syscall_n64.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -306,4 +306,60 @@
   <syscall name="fanotify_init" number="5295" groups="descriptor"/>
   <syscall name="fanotify_mark" number="5296" groups="descriptor,file"/>
   <syscall name="prlimit64" number="5297"/>
+  <syscall name="name_to_handle_at" number="5298" groups="descriptor,file"/>
+  <syscall name="open_by_handle_at" number="5299" groups="descriptor"/>
+  <syscall name="clock_adjtime" number="5300"/>
+  <syscall name="syncfs" number="5301" groups="descriptor"/>
+  <syscall name="sendmmsg" number="5302" groups="network"/>
+  <syscall name="setns" number="5303" groups="descriptor"/>
+  <syscall name="process_vm_readv" number="5304"/>
+  <syscall name="process_vm_writev" number="5305"/>
+  <syscall name="kcmp" number="5306"/>
+  <syscall name="finit_module" number="5307" groups="descriptor"/>
+  <syscall name="getdents64" number="5308" groups="descriptor"/>
+  <syscall name="sched_setattr" number="5309"/>
+  <syscall name="sched_getattr" number="5310"/>
+  <syscall name="renameat2" number="5311"/>
+  <syscall name="seccomp" number="5312"/>
+  <syscall name="getrandom" number="5313"/>
+  <syscall name="memfd_create" number="5314"/>
+  <syscall name="bpf" number="5315"/>
+  <syscall name="execveat" number="5316"/>
+  <syscall name="userfaultfd" number="5317"/>
+  <syscall name="membarrier" number="5318"/>
+  <syscall name="mlock2" number="5319"/>
+  <syscall name="copy_file_range" number="5320"/>
+  <syscall name="preadv2" number="5321"/>
+  <syscall name="pwritev2" number="5322"/>
+  <syscall name="pkey_mprotect" number="5323"/>
+  <syscall name="pkey_alloc" number="5324"/>
+  <syscall name="pkey_free" number="5325"/>
+  <syscall name="statx" number="5326"/>
+  <syscall name="rseq" number="5327"/>
+  <syscall name="io_pgetevents" number="5328"/>
+  <syscall name="pidfd_send_signal" number="5424"/>
+  <syscall name="io_uring_setup" number="5425"/>
+  <syscall name="io_uring_enter" number="5426"/>
+  <syscall name="io_uring_register" number="5427"/>
+  <syscall name="open_tree" number="5428"/>
+  <syscall name="move_mount" number="5429"/>
+  <syscall name="fsopen" number="5430"/>
+  <syscall name="fsconfig" number="5431"/>
+  <syscall name="fsmount" number="5432"/>
+  <syscall name="fspick" number="5433"/>
+  <syscall name="pidfd_open" number="5434"/>
+  <syscall name="clone3" number="5435"/>
+  <syscall name="close_range" number="5436"/>
+  <syscall name="openat2" number="5437"/>
+  <syscall name="pidfd_getfd" number="5438"/>
+  <syscall name="faccessat2" number="5439"/>
+  <syscall name="process_madvise" number="5440"/>
+  <syscall name="epoll_pwait2" number="5441"/>
+  <syscall name="mount_setattr" number="5442"/>
+  <syscall name="quotactl_fd" number="5443"/>
+  <syscall name="landlock_create_ruleset" number="5444"/>
+  <syscall name="landlock_add_rule" number="5445"/>
+  <syscall name="landlock_restrict_self" number="5446"/>
+  <syscall name="process_mrelease" number="5448"/>
+  <syscall name="futex_waitv" number="5449"/>
 </syscalls_info>
diff --git a/gdb/syscalls/mips-n64-linux.xml.in b/gdb/syscalls/mips-n64-linux.xml.in
index 28ac1509d6f..26e470e7ff0 100644
--- a/gdb/syscalls/mips-n64-linux.xml.in
+++ b/gdb/syscalls/mips-n64-linux.xml.in
@@ -8,11 +8,12 @@
 <!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
 
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/mips/include/asm/unistd.h
+
+     arch/mips/kernel/syscalls/syscall_n64.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="read" number="5000"/>
   <syscall name="write" number="5001"/>
@@ -309,4 +310,60 @@
   <syscall name="fanotify_init" number="5295"/>
   <syscall name="fanotify_mark" number="5296"/>
   <syscall name="prlimit64" number="5297"/>
+  <syscall name="name_to_handle_at" number="5298"/>
+  <syscall name="open_by_handle_at" number="5299"/>
+  <syscall name="clock_adjtime" number="5300"/>
+  <syscall name="syncfs" number="5301"/>
+  <syscall name="sendmmsg" number="5302"/>
+  <syscall name="setns" number="5303"/>
+  <syscall name="process_vm_readv" number="5304"/>
+  <syscall name="process_vm_writev" number="5305"/>
+  <syscall name="kcmp" number="5306"/>
+  <syscall name="finit_module" number="5307"/>
+  <syscall name="getdents64" number="5308"/>
+  <syscall name="sched_setattr" number="5309"/>
+  <syscall name="sched_getattr" number="5310"/>
+  <syscall name="renameat2" number="5311"/>
+  <syscall name="seccomp" number="5312"/>
+  <syscall name="getrandom" number="5313"/>
+  <syscall name="memfd_create" number="5314"/>
+  <syscall name="bpf" number="5315"/>
+  <syscall name="execveat" number="5316"/>
+  <syscall name="userfaultfd" number="5317"/>
+  <syscall name="membarrier" number="5318"/>
+  <syscall name="mlock2" number="5319"/>
+  <syscall name="copy_file_range" number="5320"/>
+  <syscall name="preadv2" number="5321"/>
+  <syscall name="pwritev2" number="5322"/>
+  <syscall name="pkey_mprotect" number="5323"/>
+  <syscall name="pkey_alloc" number="5324"/>
+  <syscall name="pkey_free" number="5325"/>
+  <syscall name="statx" number="5326"/>
+  <syscall name="rseq" number="5327"/>
+  <syscall name="io_pgetevents" number="5328"/>
+  <syscall name="pidfd_send_signal" number="5424"/>
+  <syscall name="io_uring_setup" number="5425"/>
+  <syscall name="io_uring_enter" number="5426"/>
+  <syscall name="io_uring_register" number="5427"/>
+  <syscall name="open_tree" number="5428"/>
+  <syscall name="move_mount" number="5429"/>
+  <syscall name="fsopen" number="5430"/>
+  <syscall name="fsconfig" number="5431"/>
+  <syscall name="fsmount" number="5432"/>
+  <syscall name="fspick" number="5433"/>
+  <syscall name="pidfd_open" number="5434"/>
+  <syscall name="clone3" number="5435"/>
+  <syscall name="close_range" number="5436"/>
+  <syscall name="openat2" number="5437"/>
+  <syscall name="pidfd_getfd" number="5438"/>
+  <syscall name="faccessat2" number="5439"/>
+  <syscall name="process_madvise" number="5440"/>
+  <syscall name="epoll_pwait2" number="5441"/>
+  <syscall name="mount_setattr" number="5442"/>
+  <syscall name="quotactl_fd" number="5443"/>
+  <syscall name="landlock_create_ruleset" number="5444"/>
+  <syscall name="landlock_add_rule" number="5445"/>
+  <syscall name="landlock_restrict_self" number="5446"/>
+  <syscall name="process_mrelease" number="5448"/>
+  <syscall name="futex_waitv" number="5449"/>
 </syscalls_info>
diff --git a/gdb/syscalls/mips-o32-linux.xml b/gdb/syscalls/mips-o32-linux.xml
index 1e845d6a4d1..b7e7af3f362 100644
--- a/gdb/syscalls/mips-o32-linux.xml
+++ b/gdb/syscalls/mips-o32-linux.xml
@@ -6,8 +6,8 @@
      are permitted in any medium without royalty provided the copyright
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/mips/include/asm/unistd.h
+
+     arch/mips/kernel/syscalls/syscall_o32.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -341,4 +341,90 @@
   <syscall name="fanotify_init" number="4336" groups="descriptor"/>
   <syscall name="fanotify_mark" number="4337" groups="descriptor,file"/>
   <syscall name="prlimit64" number="4338"/>
+  <syscall name="name_to_handle_at" number="4339" groups="descriptor,file"/>
+  <syscall name="open_by_handle_at" number="4340" groups="descriptor"/>
+  <syscall name="clock_adjtime" number="4341"/>
+  <syscall name="syncfs" number="4342" groups="descriptor"/>
+  <syscall name="sendmmsg" number="4343" groups="network"/>
+  <syscall name="setns" number="4344" groups="descriptor"/>
+  <syscall name="process_vm_readv" number="4345"/>
+  <syscall name="process_vm_writev" number="4346"/>
+  <syscall name="kcmp" number="4347"/>
+  <syscall name="finit_module" number="4348" groups="descriptor"/>
+  <syscall name="sched_setattr" number="4349"/>
+  <syscall name="sched_getattr" number="4350"/>
+  <syscall name="renameat2" number="4351"/>
+  <syscall name="seccomp" number="4352"/>
+  <syscall name="getrandom" number="4353"/>
+  <syscall name="memfd_create" number="4354"/>
+  <syscall name="bpf" number="4355"/>
+  <syscall name="execveat" number="4356"/>
+  <syscall name="userfaultfd" number="4357"/>
+  <syscall name="membarrier" number="4358"/>
+  <syscall name="mlock2" number="4359"/>
+  <syscall name="copy_file_range" number="4360"/>
+  <syscall name="preadv2" number="4361"/>
+  <syscall name="pwritev2" number="4362"/>
+  <syscall name="pkey_mprotect" number="4363"/>
+  <syscall name="pkey_alloc" number="4364"/>
+  <syscall name="pkey_free" number="4365"/>
+  <syscall name="statx" number="4366"/>
+  <syscall name="rseq" number="4367"/>
+  <syscall name="io_pgetevents" number="4368"/>
+  <syscall name="semget" number="4393" groups="ipc"/>
+  <syscall name="semctl" number="4394" groups="ipc"/>
+  <syscall name="shmget" number="4395" groups="ipc"/>
+  <syscall name="shmctl" number="4396" groups="ipc"/>
+  <syscall name="shmat" number="4397" groups="ipc,memory"/>
+  <syscall name="shmdt" number="4398" groups="ipc,memory"/>
+  <syscall name="msgget" number="4399" groups="ipc"/>
+  <syscall name="msgsnd" number="4400" groups="ipc"/>
+  <syscall name="msgrcv" number="4401" groups="ipc"/>
+  <syscall name="msgctl" number="4402" groups="ipc"/>
+  <syscall name="clock_gettime64" number="4403"/>
+  <syscall name="clock_settime64" number="4404"/>
+  <syscall name="clock_adjtime64" number="4405"/>
+  <syscall name="clock_getres_time64" number="4406"/>
+  <syscall name="clock_nanosleep_time64" number="4407"/>
+  <syscall name="timer_gettime64" number="4408"/>
+  <syscall name="timer_settime64" number="4409"/>
+  <syscall name="timerfd_gettime64" number="4410"/>
+  <syscall name="timerfd_settime64" number="4411"/>
+  <syscall name="utimensat_time64" number="4412"/>
+  <syscall name="pselect6_time64" number="4413"/>
+  <syscall name="ppoll_time64" number="4414"/>
+  <syscall name="io_pgetevents_time64" number="4416"/>
+  <syscall name="recvmmsg_time64" number="4417"/>
+  <syscall name="mq_timedsend_time64" number="4418"/>
+  <syscall name="mq_timedreceive_time64" number="4419"/>
+  <syscall name="semtimedop_time64" number="4420"/>
+  <syscall name="rt_sigtimedwait_time64" number="4421"/>
+  <syscall name="futex_time64" number="4422"/>
+  <syscall name="sched_rr_get_interval_time64" number="4423"/>
+  <syscall name="pidfd_send_signal" number="4424"/>
+  <syscall name="io_uring_setup" number="4425"/>
+  <syscall name="io_uring_enter" number="4426"/>
+  <syscall name="io_uring_register" number="4427"/>
+  <syscall name="open_tree" number="4428"/>
+  <syscall name="move_mount" number="4429"/>
+  <syscall name="fsopen" number="4430"/>
+  <syscall name="fsconfig" number="4431"/>
+  <syscall name="fsmount" number="4432"/>
+  <syscall name="fspick" number="4433"/>
+  <syscall name="pidfd_open" number="4434"/>
+  <syscall name="clone3" number="4435"/>
+  <syscall name="close_range" number="4436"/>
+  <syscall name="openat2" number="4437"/>
+  <syscall name="pidfd_getfd" number="4438"/>
+  <syscall name="faccessat2" number="4439"/>
+  <syscall name="process_madvise" number="4440"/>
+  <syscall name="epoll_pwait2" number="4441"/>
+  <syscall name="mount_setattr" number="4442"/>
+  <syscall name="quotactl_fd" number="4443"/>
+  <syscall name="landlock_create_ruleset" number="4444"/>
+  <syscall name="landlock_add_rule" number="4445"/>
+  <syscall name="landlock_restrict_self" number="4446"/>
+  <syscall name="process_mrelease" number="4448"/>
+  <syscall name="futex_waitv" number="4449"/>
+  <syscall name="set_mempolicy_home_node" number="4450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/mips-o32-linux.xml.in b/gdb/syscalls/mips-o32-linux.xml.in
index 98ba0638b8a..c9368e9c5ae 100644
--- a/gdb/syscalls/mips-o32-linux.xml.in
+++ b/gdb/syscalls/mips-o32-linux.xml.in
@@ -8,11 +8,12 @@
 <!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
 
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/mips/include/asm/unistd.h
+
+     arch/mips/kernel/syscalls/syscall_o32.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="syscall" number="4000"/>
   <syscall name="exit" number="4001"/>
@@ -344,4 +345,90 @@
   <syscall name="fanotify_init" number="4336"/>
   <syscall name="fanotify_mark" number="4337"/>
   <syscall name="prlimit64" number="4338"/>
+  <syscall name="name_to_handle_at" number="4339"/>
+  <syscall name="open_by_handle_at" number="4340"/>
+  <syscall name="clock_adjtime" number="4341"/>
+  <syscall name="syncfs" number="4342"/>
+  <syscall name="sendmmsg" number="4343"/>
+  <syscall name="setns" number="4344"/>
+  <syscall name="process_vm_readv" number="4345"/>
+  <syscall name="process_vm_writev" number="4346"/>
+  <syscall name="kcmp" number="4347"/>
+  <syscall name="finit_module" number="4348"/>
+  <syscall name="sched_setattr" number="4349"/>
+  <syscall name="sched_getattr" number="4350"/>
+  <syscall name="renameat2" number="4351"/>
+  <syscall name="seccomp" number="4352"/>
+  <syscall name="getrandom" number="4353"/>
+  <syscall name="memfd_create" number="4354"/>
+  <syscall name="bpf" number="4355"/>
+  <syscall name="execveat" number="4356"/>
+  <syscall name="userfaultfd" number="4357"/>
+  <syscall name="membarrier" number="4358"/>
+  <syscall name="mlock2" number="4359"/>
+  <syscall name="copy_file_range" number="4360"/>
+  <syscall name="preadv2" number="4361"/>
+  <syscall name="pwritev2" number="4362"/>
+  <syscall name="pkey_mprotect" number="4363"/>
+  <syscall name="pkey_alloc" number="4364"/>
+  <syscall name="pkey_free" number="4365"/>
+  <syscall name="statx" number="4366"/>
+  <syscall name="rseq" number="4367"/>
+  <syscall name="io_pgetevents" number="4368"/>
+  <syscall name="semget" number="4393"/>
+  <syscall name="semctl" number="4394"/>
+  <syscall name="shmget" number="4395"/>
+  <syscall name="shmctl" number="4396"/>
+  <syscall name="shmat" number="4397"/>
+  <syscall name="shmdt" number="4398"/>
+  <syscall name="msgget" number="4399"/>
+  <syscall name="msgsnd" number="4400"/>
+  <syscall name="msgrcv" number="4401"/>
+  <syscall name="msgctl" number="4402"/>
+  <syscall name="clock_gettime64" number="4403"/>
+  <syscall name="clock_settime64" number="4404"/>
+  <syscall name="clock_adjtime64" number="4405"/>
+  <syscall name="clock_getres_time64" number="4406"/>
+  <syscall name="clock_nanosleep_time64" number="4407"/>
+  <syscall name="timer_gettime64" number="4408"/>
+  <syscall name="timer_settime64" number="4409"/>
+  <syscall name="timerfd_gettime64" number="4410"/>
+  <syscall name="timerfd_settime64" number="4411"/>
+  <syscall name="utimensat_time64" number="4412"/>
+  <syscall name="pselect6_time64" number="4413"/>
+  <syscall name="ppoll_time64" number="4414"/>
+  <syscall name="io_pgetevents_time64" number="4416"/>
+  <syscall name="recvmmsg_time64" number="4417"/>
+  <syscall name="mq_timedsend_time64" number="4418"/>
+  <syscall name="mq_timedreceive_time64" number="4419"/>
+  <syscall name="semtimedop_time64" number="4420"/>
+  <syscall name="rt_sigtimedwait_time64" number="4421"/>
+  <syscall name="futex_time64" number="4422"/>
+  <syscall name="sched_rr_get_interval_time64" number="4423"/>
+  <syscall name="pidfd_send_signal" number="4424"/>
+  <syscall name="io_uring_setup" number="4425"/>
+  <syscall name="io_uring_enter" number="4426"/>
+  <syscall name="io_uring_register" number="4427"/>
+  <syscall name="open_tree" number="4428"/>
+  <syscall name="move_mount" number="4429"/>
+  <syscall name="fsopen" number="4430"/>
+  <syscall name="fsconfig" number="4431"/>
+  <syscall name="fsmount" number="4432"/>
+  <syscall name="fspick" number="4433"/>
+  <syscall name="pidfd_open" number="4434"/>
+  <syscall name="clone3" number="4435"/>
+  <syscall name="close_range" number="4436"/>
+  <syscall name="openat2" number="4437"/>
+  <syscall name="pidfd_getfd" number="4438"/>
+  <syscall name="faccessat2" number="4439"/>
+  <syscall name="process_madvise" number="4440"/>
+  <syscall name="epoll_pwait2" number="4441"/>
+  <syscall name="mount_setattr" number="4442"/>
+  <syscall name="quotactl_fd" number="4443"/>
+  <syscall name="landlock_create_ruleset" number="4444"/>
+  <syscall name="landlock_add_rule" number="4445"/>
+  <syscall name="landlock_restrict_self" number="4446"/>
+  <syscall name="process_mrelease" number="4448"/>
+  <syscall name="futex_waitv" number="4449"/>
+  <syscall name="set_mempolicy_home_node" number="4450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/ppc-linux.xml b/gdb/syscalls/ppc-linux.xml
index 34ba8bd4e49..967a6cd3ea9 100644
--- a/gdb/syscalls/ppc-linux.xml
+++ b/gdb/syscalls/ppc-linux.xml
@@ -7,7 +7,7 @@
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/powerpc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -439,4 +439,7 @@
   <syscall name="landlock_create_ruleset" number="444"/>
   <syscall name="landlock_add_rule" number="445"/>
   <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/ppc-linux.xml.in b/gdb/syscalls/ppc-linux.xml.in
index 61c7c585453..f22f3570e7b 100644
--- a/gdb/syscalls/ppc-linux.xml.in
+++ b/gdb/syscalls/ppc-linux.xml.in
@@ -9,7 +9,7 @@
 
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/powerpc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
@@ -443,4 +443,7 @@
   <syscall name="landlock_create_ruleset" number="444"/>
   <syscall name="landlock_add_rule" number="445"/>
   <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/ppc64-linux.xml b/gdb/syscalls/ppc64-linux.xml
index 838f73bc25e..8a3e8a2864f 100644
--- a/gdb/syscalls/ppc64-linux.xml
+++ b/gdb/syscalls/ppc64-linux.xml
@@ -7,7 +7,7 @@
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/powerpc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -411,4 +411,7 @@
   <syscall name="landlock_create_ruleset" number="444"/>
   <syscall name="landlock_add_rule" number="445"/>
   <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/ppc64-linux.xml.in b/gdb/syscalls/ppc64-linux.xml.in
index 4ed80e0a41b..056cd00e4ec 100644
--- a/gdb/syscalls/ppc64-linux.xml.in
+++ b/gdb/syscalls/ppc64-linux.xml.in
@@ -9,7 +9,7 @@
 
 <!-- This file was generated using the following file:
 
-     <sys/syscall.h>
+     arch/powerpc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
@@ -415,4 +415,7 @@
   <syscall name="landlock_create_ruleset" number="444"/>
   <syscall name="landlock_add_rule" number="445"/>
   <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/s390-linux.xml b/gdb/syscalls/s390-linux.xml
index 12548d07583..550dda730b3 100644
--- a/gdb/syscalls/s390-linux.xml
+++ b/gdb/syscalls/s390-linux.xml
@@ -7,7 +7,7 @@
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
 
-     /usr/include/asm/unistd.h
+     arch/s390/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -316,6 +316,8 @@
   <syscall name="pipe2" number="325" groups="descriptor"/>
   <syscall name="dup3" number="326" groups="descriptor"/>
   <syscall name="epoll_create1" number="327" groups="descriptor"/>
+  <syscall name="preadv" number="328" groups="descriptor"/>
+  <syscall name="pwritev" number="329" groups="descriptor"/>
   <syscall name="rt_tgsigqueueinfo" number="330" groups="process,signal"/>
   <syscall name="perf_event_open" number="331" groups="descriptor"/>
   <syscall name="fanotify_init" number="332" groups="descriptor"/>
@@ -361,4 +363,72 @@
   <syscall name="recvmsg" number="372" groups="network"/>
   <syscall name="shutdown" number="373" groups="network"/>
   <syscall name="mlock2" number="374"/>
+  <syscall name="copy_file_range" number="375"/>
+  <syscall name="preadv2" number="376"/>
+  <syscall name="pwritev2" number="377"/>
+  <syscall name="s390_guarded_storage" number="378"/>
+  <syscall name="statx" number="379"/>
+  <syscall name="s390_sthyi" number="380"/>
+  <syscall name="kexec_file_load" number="381"/>
+  <syscall name="io_pgetevents" number="382"/>
+  <syscall name="rseq" number="383"/>
+  <syscall name="pkey_mprotect" number="384"/>
+  <syscall name="pkey_alloc" number="385"/>
+  <syscall name="pkey_free" number="386"/>
+  <syscall name="semget" number="393" groups="ipc"/>
+  <syscall name="semctl" number="394" groups="ipc"/>
+  <syscall name="shmget" number="395" groups="ipc"/>
+  <syscall name="shmctl" number="396" groups="ipc"/>
+  <syscall name="shmat" number="397" groups="ipc,memory"/>
+  <syscall name="shmdt" number="398" groups="ipc,memory"/>
+  <syscall name="msgget" number="399" groups="ipc"/>
+  <syscall name="msgsnd" number="400" groups="ipc"/>
+  <syscall name="msgrcv" number="401" groups="ipc"/>
+  <syscall name="msgctl" number="402" groups="ipc"/>
+  <syscall name="clock_gettime64" number="403"/>
+  <syscall name="clock_settime64" number="404"/>
+  <syscall name="clock_adjtime64" number="405"/>
+  <syscall name="clock_getres_time64" number="406"/>
+  <syscall name="clock_nanosleep_time64" number="407"/>
+  <syscall name="timer_gettime64" number="408"/>
+  <syscall name="timer_settime64" number="409"/>
+  <syscall name="timerfd_gettime64" number="410"/>
+  <syscall name="timerfd_settime64" number="411"/>
+  <syscall name="utimensat_time64" number="412"/>
+  <syscall name="pselect6_time64" number="413"/>
+  <syscall name="ppoll_time64" number="414"/>
+  <syscall name="io_pgetevents_time64" number="416"/>
+  <syscall name="recvmmsg_time64" number="417"/>
+  <syscall name="mq_timedsend_time64" number="418"/>
+  <syscall name="mq_timedreceive_time64" number="419"/>
+  <syscall name="semtimedop_time64" number="420"/>
+  <syscall name="rt_sigtimedwait_time64" number="421"/>
+  <syscall name="futex_time64" number="422"/>
+  <syscall name="sched_rr_get_interval_time64" number="423"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="clone3" number="435"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/s390-linux.xml.in b/gdb/syscalls/s390-linux.xml.in
index b0732b71048..ea2356461c9 100644
--- a/gdb/syscalls/s390-linux.xml.in
+++ b/gdb/syscalls/s390-linux.xml.in
@@ -9,10 +9,11 @@
 
 <!-- This file was generated using the following file:
 
-     /usr/include/asm/unistd.h
+     arch/s390/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="exit" number="1"/>
   <syscall name="fork" number="2"/>
@@ -319,6 +320,8 @@
   <syscall name="pipe2" number="325"/>
   <syscall name="dup3" number="326"/>
   <syscall name="epoll_create1" number="327"/>
+  <syscall name="preadv" number="328"/>
+  <syscall name="pwritev" number="329"/>
   <syscall name="rt_tgsigqueueinfo" number="330"/>
   <syscall name="perf_event_open" number="331"/>
   <syscall name="fanotify_init" number="332"/>
@@ -364,4 +367,72 @@
   <syscall name="recvmsg" number="372"/>
   <syscall name="shutdown" number="373"/>
   <syscall name="mlock2" number="374"/>
+  <syscall name="copy_file_range" number="375"/>
+  <syscall name="preadv2" number="376"/>
+  <syscall name="pwritev2" number="377"/>
+  <syscall name="s390_guarded_storage" number="378"/>
+  <syscall name="statx" number="379"/>
+  <syscall name="s390_sthyi" number="380"/>
+  <syscall name="kexec_file_load" number="381"/>
+  <syscall name="io_pgetevents" number="382"/>
+  <syscall name="rseq" number="383"/>
+  <syscall name="pkey_mprotect" number="384"/>
+  <syscall name="pkey_alloc" number="385"/>
+  <syscall name="pkey_free" number="386"/>
+  <syscall name="semget" number="393"/>
+  <syscall name="semctl" number="394"/>
+  <syscall name="shmget" number="395"/>
+  <syscall name="shmctl" number="396"/>
+  <syscall name="shmat" number="397"/>
+  <syscall name="shmdt" number="398"/>
+  <syscall name="msgget" number="399"/>
+  <syscall name="msgsnd" number="400"/>
+  <syscall name="msgrcv" number="401"/>
+  <syscall name="msgctl" number="402"/>
+  <syscall name="clock_gettime64" number="403"/>
+  <syscall name="clock_settime64" number="404"/>
+  <syscall name="clock_adjtime64" number="405"/>
+  <syscall name="clock_getres_time64" number="406"/>
+  <syscall name="clock_nanosleep_time64" number="407"/>
+  <syscall name="timer_gettime64" number="408"/>
+  <syscall name="timer_settime64" number="409"/>
+  <syscall name="timerfd_gettime64" number="410"/>
+  <syscall name="timerfd_settime64" number="411"/>
+  <syscall name="utimensat_time64" number="412"/>
+  <syscall name="pselect6_time64" number="413"/>
+  <syscall name="ppoll_time64" number="414"/>
+  <syscall name="io_pgetevents_time64" number="416"/>
+  <syscall name="recvmmsg_time64" number="417"/>
+  <syscall name="mq_timedsend_time64" number="418"/>
+  <syscall name="mq_timedreceive_time64" number="419"/>
+  <syscall name="semtimedop_time64" number="420"/>
+  <syscall name="rt_sigtimedwait_time64" number="421"/>
+  <syscall name="futex_time64" number="422"/>
+  <syscall name="sched_rr_get_interval_time64" number="423"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="clone3" number="435"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/s390x-linux.xml b/gdb/syscalls/s390x-linux.xml
index 1738d4c5713..511129eb851 100644
--- a/gdb/syscalls/s390x-linux.xml
+++ b/gdb/syscalls/s390x-linux.xml
@@ -7,7 +7,7 @@
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
 
-     /usr/include/asm/unistd.h
+     arch/s390/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -283,6 +283,8 @@
   <syscall name="pipe2" number="325" groups="descriptor"/>
   <syscall name="dup3" number="326" groups="descriptor"/>
   <syscall name="epoll_create1" number="327" groups="descriptor"/>
+  <syscall name="preadv" number="328" groups="descriptor"/>
+  <syscall name="pwritev" number="329" groups="descriptor"/>
   <syscall name="rt_tgsigqueueinfo" number="330" groups="process,signal"/>
   <syscall name="perf_event_open" number="331" groups="descriptor"/>
   <syscall name="fanotify_init" number="332" groups="descriptor"/>
@@ -328,4 +330,53 @@
   <syscall name="recvmsg" number="372" groups="network"/>
   <syscall name="shutdown" number="373" groups="network"/>
   <syscall name="mlock2" number="374"/>
+  <syscall name="copy_file_range" number="375"/>
+  <syscall name="preadv2" number="376"/>
+  <syscall name="pwritev2" number="377"/>
+  <syscall name="s390_guarded_storage" number="378"/>
+  <syscall name="statx" number="379"/>
+  <syscall name="s390_sthyi" number="380"/>
+  <syscall name="kexec_file_load" number="381"/>
+  <syscall name="io_pgetevents" number="382"/>
+  <syscall name="rseq" number="383"/>
+  <syscall name="pkey_mprotect" number="384"/>
+  <syscall name="pkey_alloc" number="385"/>
+  <syscall name="pkey_free" number="386"/>
+  <syscall name="semtimedop" number="392" groups="ipc"/>
+  <syscall name="semget" number="393" groups="ipc"/>
+  <syscall name="semctl" number="394" groups="ipc"/>
+  <syscall name="shmget" number="395" groups="ipc"/>
+  <syscall name="shmctl" number="396" groups="ipc"/>
+  <syscall name="shmat" number="397" groups="ipc,memory"/>
+  <syscall name="shmdt" number="398" groups="ipc,memory"/>
+  <syscall name="msgget" number="399" groups="ipc"/>
+  <syscall name="msgsnd" number="400" groups="ipc"/>
+  <syscall name="msgrcv" number="401" groups="ipc"/>
+  <syscall name="msgctl" number="402" groups="ipc"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="clone3" number="435"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/s390x-linux.xml.in b/gdb/syscalls/s390x-linux.xml.in
index 858263068f9..4e3fd3ec42b 100644
--- a/gdb/syscalls/s390x-linux.xml.in
+++ b/gdb/syscalls/s390x-linux.xml.in
@@ -9,10 +9,11 @@
 
 <!-- This file was generated using the following file:
 
-     /usr/include/asm/unistd.h
+     arch/s390/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="exit" number="1"/>
   <syscall name="fork" number="2"/>
@@ -286,6 +287,8 @@
   <syscall name="pipe2" number="325"/>
   <syscall name="dup3" number="326"/>
   <syscall name="epoll_create1" number="327"/>
+  <syscall name="preadv" number="328"/>
+  <syscall name="pwritev" number="329"/>
   <syscall name="rt_tgsigqueueinfo" number="330"/>
   <syscall name="perf_event_open" number="331"/>
   <syscall name="fanotify_init" number="332"/>
@@ -331,4 +334,53 @@
   <syscall name="recvmsg" number="372"/>
   <syscall name="shutdown" number="373"/>
   <syscall name="mlock2" number="374"/>
+  <syscall name="copy_file_range" number="375"/>
+  <syscall name="preadv2" number="376"/>
+  <syscall name="pwritev2" number="377"/>
+  <syscall name="s390_guarded_storage" number="378"/>
+  <syscall name="statx" number="379"/>
+  <syscall name="s390_sthyi" number="380"/>
+  <syscall name="kexec_file_load" number="381"/>
+  <syscall name="io_pgetevents" number="382"/>
+  <syscall name="rseq" number="383"/>
+  <syscall name="pkey_mprotect" number="384"/>
+  <syscall name="pkey_alloc" number="385"/>
+  <syscall name="pkey_free" number="386"/>
+  <syscall name="semtimedop" number="392"/>
+  <syscall name="semget" number="393"/>
+  <syscall name="semctl" number="394"/>
+  <syscall name="shmget" number="395"/>
+  <syscall name="shmctl" number="396"/>
+  <syscall name="shmat" number="397"/>
+  <syscall name="shmdt" number="398"/>
+  <syscall name="msgget" number="399"/>
+  <syscall name="msgsnd" number="400"/>
+  <syscall name="msgrcv" number="401"/>
+  <syscall name="msgctl" number="402"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="clone3" number="435"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/sparc-linux.xml b/gdb/syscalls/sparc-linux.xml
index 25ceb37dc4f..5eaf7a0656c 100644
--- a/gdb/syscalls/sparc-linux.xml
+++ b/gdb/syscalls/sparc-linux.xml
@@ -6,8 +6,8 @@
      are permitted in any medium without royalty provided the copyright
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/sparc/include/asm/unistd.h
+
+     arch/sparc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -338,4 +338,96 @@
   <syscall name="rt_tgsigqueueinfo" number="326" groups="process,signal"/>
   <syscall name="perf_event_open" number="327" groups="descriptor"/>
   <syscall name="recvmmsg" number="328" groups="network"/>
+  <syscall name="fanotify_init" number="329" groups="descriptor"/>
+  <syscall name="fanotify_mark" number="330" groups="descriptor,file"/>
+  <syscall name="prlimit64" number="331"/>
+  <syscall name="name_to_handle_at" number="332" groups="descriptor,file"/>
+  <syscall name="open_by_handle_at" number="333" groups="descriptor"/>
+  <syscall name="clock_adjtime" number="334"/>
+  <syscall name="syncfs" number="335" groups="descriptor"/>
+  <syscall name="sendmmsg" number="336" groups="network"/>
+  <syscall name="setns" number="337" groups="descriptor"/>
+  <syscall name="process_vm_readv" number="338"/>
+  <syscall name="process_vm_writev" number="339"/>
+  <syscall name="kern_features" number="340"/>
+  <syscall name="kcmp" number="341"/>
+  <syscall name="finit_module" number="342" groups="descriptor"/>
+  <syscall name="sched_setattr" number="343"/>
+  <syscall name="sched_getattr" number="344"/>
+  <syscall name="renameat2" number="345"/>
+  <syscall name="seccomp" number="346"/>
+  <syscall name="getrandom" number="347"/>
+  <syscall name="memfd_create" number="348"/>
+  <syscall name="bpf" number="349"/>
+  <syscall name="execveat" number="350"/>
+  <syscall name="membarrier" number="351"/>
+  <syscall name="userfaultfd" number="352"/>
+  <syscall name="bind" number="353" groups="network"/>
+  <syscall name="listen" number="354" groups="network"/>
+  <syscall name="setsockopt" number="355" groups="network"/>
+  <syscall name="mlock2" number="356"/>
+  <syscall name="copy_file_range" number="357"/>
+  <syscall name="preadv2" number="358"/>
+  <syscall name="pwritev2" number="359"/>
+  <syscall name="statx" number="360"/>
+  <syscall name="io_pgetevents" number="361"/>
+  <syscall name="pkey_mprotect" number="362"/>
+  <syscall name="pkey_alloc" number="363"/>
+  <syscall name="pkey_free" number="364"/>
+  <syscall name="rseq" number="365"/>
+  <syscall name="semget" number="393" groups="ipc"/>
+  <syscall name="semctl" number="394" groups="ipc"/>
+  <syscall name="shmget" number="395" groups="ipc"/>
+  <syscall name="shmctl" number="396" groups="ipc"/>
+  <syscall name="shmat" number="397" groups="ipc,memory"/>
+  <syscall name="shmdt" number="398" groups="ipc,memory"/>
+  <syscall name="msgget" number="399" groups="ipc"/>
+  <syscall name="msgsnd" number="400" groups="ipc"/>
+  <syscall name="msgrcv" number="401" groups="ipc"/>
+  <syscall name="msgctl" number="402" groups="ipc"/>
+  <syscall name="clock_gettime64" number="403"/>
+  <syscall name="clock_settime64" number="404"/>
+  <syscall name="clock_adjtime64" number="405"/>
+  <syscall name="clock_getres_time64" number="406"/>
+  <syscall name="clock_nanosleep_time64" number="407"/>
+  <syscall name="timer_gettime64" number="408"/>
+  <syscall name="timer_settime64" number="409"/>
+  <syscall name="timerfd_gettime64" number="410"/>
+  <syscall name="timerfd_settime64" number="411"/>
+  <syscall name="utimensat_time64" number="412"/>
+  <syscall name="pselect6_time64" number="413"/>
+  <syscall name="ppoll_time64" number="414"/>
+  <syscall name="io_pgetevents_time64" number="416"/>
+  <syscall name="recvmmsg_time64" number="417"/>
+  <syscall name="mq_timedsend_time64" number="418"/>
+  <syscall name="mq_timedreceive_time64" number="419"/>
+  <syscall name="semtimedop_time64" number="420"/>
+  <syscall name="rt_sigtimedwait_time64" number="421"/>
+  <syscall name="futex_time64" number="422"/>
+  <syscall name="sched_rr_get_interval_time64" number="423"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/sparc-linux.xml.in b/gdb/syscalls/sparc-linux.xml.in
index 81afb6daa15..3d7053cf2a1 100644
--- a/gdb/syscalls/sparc-linux.xml.in
+++ b/gdb/syscalls/sparc-linux.xml.in
@@ -8,11 +8,12 @@
 <!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
 
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/sparc/include/asm/unistd.h
+
+     arch/sparc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="restart_syscall" number="0"/>
   <syscall name="exit" number="1"/>
@@ -27,7 +28,7 @@
   <syscall name="unlink" number="10"/>
   <syscall name="execv" number="11"/>
   <syscall name="chdir" number="12"/>
-  <syscall name="chown"	number="13"/>
+  <syscall name="chown" number="13"/>
   <syscall name="mknod" number="14"/>
   <syscall name="chmod" number="15"/>
   <syscall name="lchown" number="16"/>
@@ -341,4 +342,96 @@
   <syscall name="rt_tgsigqueueinfo" number="326"/>
   <syscall name="perf_event_open" number="327"/>
   <syscall name="recvmmsg" number="328"/>
+  <syscall name="fanotify_init" number="329"/>
+  <syscall name="fanotify_mark" number="330"/>
+  <syscall name="prlimit64" number="331"/>
+  <syscall name="name_to_handle_at" number="332"/>
+  <syscall name="open_by_handle_at" number="333"/>
+  <syscall name="clock_adjtime" number="334"/>
+  <syscall name="syncfs" number="335"/>
+  <syscall name="sendmmsg" number="336"/>
+  <syscall name="setns" number="337"/>
+  <syscall name="process_vm_readv" number="338"/>
+  <syscall name="process_vm_writev" number="339"/>
+  <syscall name="kern_features" number="340"/>
+  <syscall name="kcmp" number="341"/>
+  <syscall name="finit_module" number="342"/>
+  <syscall name="sched_setattr" number="343"/>
+  <syscall name="sched_getattr" number="344"/>
+  <syscall name="renameat2" number="345"/>
+  <syscall name="seccomp" number="346"/>
+  <syscall name="getrandom" number="347"/>
+  <syscall name="memfd_create" number="348"/>
+  <syscall name="bpf" number="349"/>
+  <syscall name="execveat" number="350"/>
+  <syscall name="membarrier" number="351"/>
+  <syscall name="userfaultfd" number="352"/>
+  <syscall name="bind" number="353"/>
+  <syscall name="listen" number="354"/>
+  <syscall name="setsockopt" number="355"/>
+  <syscall name="mlock2" number="356"/>
+  <syscall name="copy_file_range" number="357"/>
+  <syscall name="preadv2" number="358"/>
+  <syscall name="pwritev2" number="359"/>
+  <syscall name="statx" number="360"/>
+  <syscall name="io_pgetevents" number="361"/>
+  <syscall name="pkey_mprotect" number="362"/>
+  <syscall name="pkey_alloc" number="363"/>
+  <syscall name="pkey_free" number="364"/>
+  <syscall name="rseq" number="365"/>
+  <syscall name="semget" number="393"/>
+  <syscall name="semctl" number="394"/>
+  <syscall name="shmget" number="395"/>
+  <syscall name="shmctl" number="396"/>
+  <syscall name="shmat" number="397"/>
+  <syscall name="shmdt" number="398"/>
+  <syscall name="msgget" number="399"/>
+  <syscall name="msgsnd" number="400"/>
+  <syscall name="msgrcv" number="401"/>
+  <syscall name="msgctl" number="402"/>
+  <syscall name="clock_gettime64" number="403"/>
+  <syscall name="clock_settime64" number="404"/>
+  <syscall name="clock_adjtime64" number="405"/>
+  <syscall name="clock_getres_time64" number="406"/>
+  <syscall name="clock_nanosleep_time64" number="407"/>
+  <syscall name="timer_gettime64" number="408"/>
+  <syscall name="timer_settime64" number="409"/>
+  <syscall name="timerfd_gettime64" number="410"/>
+  <syscall name="timerfd_settime64" number="411"/>
+  <syscall name="utimensat_time64" number="412"/>
+  <syscall name="pselect6_time64" number="413"/>
+  <syscall name="ppoll_time64" number="414"/>
+  <syscall name="io_pgetevents_time64" number="416"/>
+  <syscall name="recvmmsg_time64" number="417"/>
+  <syscall name="mq_timedsend_time64" number="418"/>
+  <syscall name="mq_timedreceive_time64" number="419"/>
+  <syscall name="semtimedop_time64" number="420"/>
+  <syscall name="rt_sigtimedwait_time64" number="421"/>
+  <syscall name="futex_time64" number="422"/>
+  <syscall name="sched_rr_get_interval_time64" number="423"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/sparc64-linux.xml b/gdb/syscalls/sparc64-linux.xml
index c2e9fadc1ab..66a9bbf72b4 100644
--- a/gdb/syscalls/sparc64-linux.xml
+++ b/gdb/syscalls/sparc64-linux.xml
@@ -6,8 +6,8 @@
      are permitted in any medium without royalty provided the copyright
      notice and this notice are preserved.  -->
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/sparc/include/asm/unistd.h
+
+     arch/sparc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 <syscalls_info>
@@ -320,4 +320,77 @@
   <syscall name="rt_tgsigqueueinfo" number="326" groups="process,signal"/>
   <syscall name="perf_event_open" number="327" groups="descriptor"/>
   <syscall name="recvmmsg" number="328" groups="network"/>
+  <syscall name="fanotify_init" number="329" groups="descriptor"/>
+  <syscall name="fanotify_mark" number="330" groups="descriptor,file"/>
+  <syscall name="prlimit64" number="331"/>
+  <syscall name="name_to_handle_at" number="332" groups="descriptor,file"/>
+  <syscall name="open_by_handle_at" number="333" groups="descriptor"/>
+  <syscall name="clock_adjtime" number="334"/>
+  <syscall name="syncfs" number="335" groups="descriptor"/>
+  <syscall name="sendmmsg" number="336" groups="network"/>
+  <syscall name="setns" number="337" groups="descriptor"/>
+  <syscall name="process_vm_readv" number="338"/>
+  <syscall name="process_vm_writev" number="339"/>
+  <syscall name="kern_features" number="340"/>
+  <syscall name="kcmp" number="341"/>
+  <syscall name="finit_module" number="342" groups="descriptor"/>
+  <syscall name="sched_setattr" number="343"/>
+  <syscall name="sched_getattr" number="344"/>
+  <syscall name="renameat2" number="345"/>
+  <syscall name="seccomp" number="346"/>
+  <syscall name="getrandom" number="347"/>
+  <syscall name="memfd_create" number="348"/>
+  <syscall name="bpf" number="349"/>
+  <syscall name="execveat" number="350"/>
+  <syscall name="membarrier" number="351"/>
+  <syscall name="userfaultfd" number="352"/>
+  <syscall name="bind" number="353" groups="network"/>
+  <syscall name="listen" number="354" groups="network"/>
+  <syscall name="setsockopt" number="355" groups="network"/>
+  <syscall name="mlock2" number="356"/>
+  <syscall name="copy_file_range" number="357"/>
+  <syscall name="preadv2" number="358"/>
+  <syscall name="pwritev2" number="359"/>
+  <syscall name="statx" number="360"/>
+  <syscall name="io_pgetevents" number="361"/>
+  <syscall name="pkey_mprotect" number="362"/>
+  <syscall name="pkey_alloc" number="363"/>
+  <syscall name="pkey_free" number="364"/>
+  <syscall name="rseq" number="365"/>
+  <syscall name="semtimedop" number="392" groups="ipc"/>
+  <syscall name="semget" number="393" groups="ipc"/>
+  <syscall name="semctl" number="394" groups="ipc"/>
+  <syscall name="shmget" number="395" groups="ipc"/>
+  <syscall name="shmctl" number="396" groups="ipc"/>
+  <syscall name="shmat" number="397" groups="ipc,memory"/>
+  <syscall name="shmdt" number="398" groups="ipc,memory"/>
+  <syscall name="msgget" number="399" groups="ipc"/>
+  <syscall name="msgsnd" number="400" groups="ipc"/>
+  <syscall name="msgrcv" number="401" groups="ipc"/>
+  <syscall name="msgctl" number="402" groups="ipc"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/sparc64-linux.xml.in b/gdb/syscalls/sparc64-linux.xml.in
index 15bb84ab7e1..8b3f08df3f2 100644
--- a/gdb/syscalls/sparc64-linux.xml.in
+++ b/gdb/syscalls/sparc64-linux.xml.in
@@ -8,11 +8,12 @@
 <!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
 
 <!-- This file was generated using the following file:
-     
-     /usr/src/linux/arch/sparc/include/asm/unistd.h
+
+     arch/sparc/kernel/syscalls/syscall.tbl
 
      The file mentioned above belongs to the Linux Kernel.  -->
 
+
 <syscalls_info>
   <syscall name="restart_syscall" number="0"/>
   <syscall name="exit" number="1"/>
@@ -27,7 +28,7 @@
   <syscall name="unlink" number="10"/>
   <syscall name="execv" number="11"/>
   <syscall name="chdir" number="12"/>
-  <syscall name="chown"	number="13"/>
+  <syscall name="chown" number="13"/>
   <syscall name="mknod" number="14"/>
   <syscall name="chmod" number="15"/>
   <syscall name="lchown" number="16"/>
@@ -323,4 +324,77 @@
   <syscall name="rt_tgsigqueueinfo" number="326"/>
   <syscall name="perf_event_open" number="327"/>
   <syscall name="recvmmsg" number="328"/>
+  <syscall name="fanotify_init" number="329"/>
+  <syscall name="fanotify_mark" number="330"/>
+  <syscall name="prlimit64" number="331"/>
+  <syscall name="name_to_handle_at" number="332"/>
+  <syscall name="open_by_handle_at" number="333"/>
+  <syscall name="clock_adjtime" number="334"/>
+  <syscall name="syncfs" number="335"/>
+  <syscall name="sendmmsg" number="336"/>
+  <syscall name="setns" number="337"/>
+  <syscall name="process_vm_readv" number="338"/>
+  <syscall name="process_vm_writev" number="339"/>
+  <syscall name="kern_features" number="340"/>
+  <syscall name="kcmp" number="341"/>
+  <syscall name="finit_module" number="342"/>
+  <syscall name="sched_setattr" number="343"/>
+  <syscall name="sched_getattr" number="344"/>
+  <syscall name="renameat2" number="345"/>
+  <syscall name="seccomp" number="346"/>
+  <syscall name="getrandom" number="347"/>
+  <syscall name="memfd_create" number="348"/>
+  <syscall name="bpf" number="349"/>
+  <syscall name="execveat" number="350"/>
+  <syscall name="membarrier" number="351"/>
+  <syscall name="userfaultfd" number="352"/>
+  <syscall name="bind" number="353"/>
+  <syscall name="listen" number="354"/>
+  <syscall name="setsockopt" number="355"/>
+  <syscall name="mlock2" number="356"/>
+  <syscall name="copy_file_range" number="357"/>
+  <syscall name="preadv2" number="358"/>
+  <syscall name="pwritev2" number="359"/>
+  <syscall name="statx" number="360"/>
+  <syscall name="io_pgetevents" number="361"/>
+  <syscall name="pkey_mprotect" number="362"/>
+  <syscall name="pkey_alloc" number="363"/>
+  <syscall name="pkey_free" number="364"/>
+  <syscall name="rseq" number="365"/>
+  <syscall name="semtimedop" number="392"/>
+  <syscall name="semget" number="393"/>
+  <syscall name="semctl" number="394"/>
+  <syscall name="shmget" number="395"/>
+  <syscall name="shmctl" number="396"/>
+  <syscall name="shmat" number="397"/>
+  <syscall name="shmdt" number="398"/>
+  <syscall name="msgget" number="399"/>
+  <syscall name="msgsnd" number="400"/>
+  <syscall name="msgrcv" number="401"/>
+  <syscall name="msgctl" number="402"/>
+  <syscall name="pidfd_send_signal" number="424"/>
+  <syscall name="io_uring_setup" number="425"/>
+  <syscall name="io_uring_enter" number="426"/>
+  <syscall name="io_uring_register" number="427"/>
+  <syscall name="open_tree" number="428"/>
+  <syscall name="move_mount" number="429"/>
+  <syscall name="fsopen" number="430"/>
+  <syscall name="fsconfig" number="431"/>
+  <syscall name="fsmount" number="432"/>
+  <syscall name="fspick" number="433"/>
+  <syscall name="pidfd_open" number="434"/>
+  <syscall name="close_range" number="436"/>
+  <syscall name="openat2" number="437"/>
+  <syscall name="pidfd_getfd" number="438"/>
+  <syscall name="faccessat2" number="439"/>
+  <syscall name="process_madvise" number="440"/>
+  <syscall name="epoll_pwait2" number="441"/>
+  <syscall name="mount_setattr" number="442"/>
+  <syscall name="quotactl_fd" number="443"/>
+  <syscall name="landlock_create_ruleset" number="444"/>
+  <syscall name="landlock_add_rule" number="445"/>
+  <syscall name="landlock_restrict_self" number="446"/>
+  <syscall name="process_mrelease" number="448"/>
+  <syscall name="futex_waitv" number="449"/>
+  <syscall name="set_mempolicy_home_node" number="450"/>
 </syscalls_info>
diff --git a/gdb/syscalls/update-linux-from-src.sh b/gdb/syscalls/update-linux-from-src.sh
new file mode 100755
index 00000000000..c85f9dfbe2f
--- /dev/null
+++ b/gdb/syscalls/update-linux-from-src.sh
@@ -0,0 +1,169 @@
+#!/bin/sh
+
+# Copyright (C) 2022 Free Software Foundation, Inc.
+#
+# This file is part of GDB.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Used to generate .xml.in files, like so:
+# $ ./update-linux-from-src.sh ~/linux-stable.git
+
+if [ $# -lt 1 ]; then
+    echo "dir argument needed"
+    exit 1
+fi
+
+d="$1"
+shift
+
+if [ ! -d "$d" ]; then
+    echo "cannot find $d"
+    exit 1
+fi
+
+pre ()
+{
+    f="$1"
+
+    year=$(date +%Y)
+
+    cat <<EOF
+<?xml version="1.0"?>
+<!-- Copyright (C) $start_date-$year Free Software Foundation, Inc.
+
+     Copying and distribution of this file, with or without modification,
+     are permitted in any medium without royalty provided the copyright
+     notice and this notice are preserved.  -->
+
+<!DOCTYPE feature SYSTEM "gdb-syscalls.dtd">
+
+<!-- This file was generated using the following file:
+
+     $f
+
+     The file mentioned above belongs to the Linux Kernel.  -->
+
+
+EOF
+
+    echo '<syscalls_info>'
+}
+
+
+post ()
+{
+    echo '</syscalls_info>'
+}
+
+one ()
+{
+    f="$1"
+    abi="$2"
+    start_date="$3"
+    offset="$4"
+
+    pre "$f" "$start_date"
+
+    grep -v "^#" "$d/$f" \
+	| awk '{print $2, $3, $1}' \
+	| grep -E "^$abi" \
+	| grep -E -v " (reserved|unused)[0-9]+ " \
+	| awk "{printf \"  <syscall name=\\\"%s\\\" number=\\\"%s\\\"/>\n\", \$2, \$3 + $offset}"
+
+    post
+}
+
+for f in *.in; do
+    start_date=2009
+    offset=0
+
+    case $f in
+	amd64-linux.xml.in)
+	    t="arch/x86/entry/syscalls/syscall_64.tbl"
+	    abi="(common|64)"
+	    ;;
+	i386-linux.xml.in)
+	    t="arch/x86/entry/syscalls/syscall_32.tbl"
+	    abi=i386
+	    ;;
+	ppc64-linux.xml.in)
+	    t="arch/powerpc/kernel/syscalls/syscall.tbl"
+	    abi="(common|64|nospu)"
+	    ;;
+	ppc-linux.xml.in)
+	    t="arch/powerpc/kernel/syscalls/syscall.tbl"
+	    abi="(common|32|nospu)"
+	    ;;
+	s390-linux.xml.in)
+	    t="arch/s390/kernel/syscalls/syscall.tbl"
+	    abi="(common|32)"
+	    ;;
+	s390x-linux.xml.in)
+	    t="arch/s390/kernel/syscalls/syscall.tbl"
+	    abi="(common|64)"
+	    ;;
+	sparc64-linux.xml.in)
+	    t="arch/sparc/kernel/syscalls/syscall.tbl"
+	    abi="(common|64)"
+	    start_date="2010"
+	    ;;
+	sparc-linux.xml.in)
+	    t="arch/sparc/kernel/syscalls/syscall.tbl"
+	    abi="(common|32)"
+	    start_date="2010"
+	    ;;
+	mips-n32-linux.xml.in)
+	    t="arch/mips/kernel/syscalls/syscall_n32.tbl"
+	    abi="n32"
+	    start_date="2011"
+	    offset=6000
+	    ;;
+	mips-n64-linux.xml.in)
+	    t="arch/mips/kernel/syscalls/syscall_n64.tbl"
+	    abi="n64"
+	    start_date="2011"
+	    offset=5000
+	    ;;
+	mips-o32-linux.xml.in)
+	    t="arch/mips/kernel/syscalls/syscall_o32.tbl"
+	    abi="o32"
+	    start_date="2011"
+	    offset=4000
+	    ;;
+	bfin-linux.xml.in)
+	    echo "Skipping $f, no longer supported"
+	    continue
+	    ;;
+	aarch64-linux.xml.in)
+	    echo "Skipping $f, no syscall.tbl"
+	    continue
+	    ;;
+	arm-linux.xml.in)
+	    echo "Skipping $f, use arm-linux.py instead"
+	    continue
+	    ;;
+	linux-defaults.xml.in)
+	    continue
+	    ;;
+	*)
+	    echo "Don't know how to generate $f"
+	    continue
+	    ;;
+    esac
+
+    echo "Generating $f"
+    one "$t" "$abi" "$start_date" "$offset" > "$f"
+
+done

  reply	other threads:[~2022-05-18  9:58 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-03 14:57 [PATCH][gdb/testsuite] Handle pipe2 syscall in gdb.base/catch-syscall.exp Tom de Vries via Gdb-patches
2022-05-05 11:47 ` [PATCH, v2][gdb/testsuite] " Tom de Vries via Gdb-patches
2022-05-05 11:49   ` [PATCH][gdb/tdep] Support catch syscall pipe2 for i386 Tom de Vries via Gdb-patches
2022-05-05 13:20     ` Simon Marchi via Gdb-patches
2022-05-09 10:26       ` [PATCH][gdb] Add gdb/syscalls/Makefile Tom de Vries via Gdb-patches
2022-05-09 14:41         ` Simon Marchi via Gdb-patches
2022-05-09 14:46           ` Tom de Vries via Gdb-patches
2022-05-09 10:39       ` [PATCH][gdb] Update syscalls/{amd64,i386}-linux.xml Tom de Vries via Gdb-patches
2022-05-09 14:48         ` Simon Marchi via Gdb-patches
2022-05-09 15:29           ` Tom de Vries via Gdb-patches
2022-05-09 15:40             ` Andreas Schwab
2022-05-09 15:42               ` Tom de Vries via Gdb-patches
2022-05-09 15:45                 ` Andreas Schwab
2022-05-09 16:04                   ` Tom de Vries via Gdb-patches
2022-05-09 17:19         ` Tom Tromey
2022-05-10 11:39           ` Tom de Vries via Gdb-patches
2022-05-12  9:00             ` Tom de Vries via Gdb-patches
2022-05-10 11:53         ` Tom de Vries via Gdb-patches
2022-05-16 16:07           ` Tom Tromey
2022-05-18  9:58             ` Tom de Vries via Gdb-patches [this message]
2022-05-05 13:23   ` [PATCH, v2][gdb/testsuite] Handle pipe2 syscall in gdb.base/catch-syscall.exp Simon Marchi via Gdb-patches
2022-05-09 10:18     ` Tom de Vries via Gdb-patches

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=d282674d-0e44-0944-4500-bdedfc4eca6d@suse.de \
    --to=gdb-patches@sourceware.org \
    --cc=simark@simark.ca \
    --cc=tdevries@suse.de \
    --cc=tom@tromey.com \
    /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