git: 2e2337522fcc - stable/13 - linux: add new syscall numbers

From: Edward Tomasz Napierala <trasz_at_FreeBSD.org>
Date: Thu, 17 Feb 2022 12:09:14 UTC
The branch stable/13 has been updated by trasz:

URL: https://cgit.FreeBSD.org/src/commit/?id=2e2337522fccc7f7af8b4a11f1ef5e83f8f15a0b

commit 2e2337522fccc7f7af8b4a11f1ef5e83f8f15a0b
Author:     Edward Tomasz Napierala <trasz@FreeBSD.org>
AuthorDate: 2021-05-28 08:02:10 +0000
Commit:     Edward Tomasz Napierala <trasz@FreeBSD.org>
CommitDate: 2022-02-13 21:30:49 +0000

    linux: add new syscall numbers
    
    Sponsored By:   EPSRC
    Differential Revision:  https://reviews.freebsd.org/D30193
    
    (cherry picked from commit 6d926e850d22c5c563571561c446c3c0dec16143)
---
 sys/amd64/linux/syscalls.master   | 47 ++++++++++++++++++++-
 sys/amd64/linux32/syscalls.master | 47 ++++++++++++++++++++-
 sys/arm64/linux/syscalls.master   | 87 +++++++++++++++++++++++++++++++++++++--
 sys/compat/linux/linux_dummy.c    | 15 +++++++
 sys/i386/linux/syscalls.master    | 47 ++++++++++++++++++++-
 5 files changed, 237 insertions(+), 6 deletions(-)

diff --git a/sys/amd64/linux/syscalls.master b/sys/amd64/linux/syscalls.master
index cfa6dab84965..d99aaa019111 100644
--- a/sys/amd64/linux/syscalls.master
+++ b/sys/amd64/linux/syscalls.master
@@ -2060,6 +2060,51 @@
 427	AUE_NULL	STD {
 		int linux_io_uring_register(void);
 	}
+428    AUE_NULL		STD {
+		int linux_open_tree(void);
+	}
+429    AUE_NULL		STD {
+		int linux_move_mount(void);
+	}
+430    AUE_NULL		STD {
+		int linux_fsopen(void);
+	}
+431    AUE_NULL		STD {
+		int linux_fsconfig(void);
+	}
+432    AUE_NULL		STD {
+		int linux_fsmount(void);
+	}
+433    AUE_NULL		STD {
+		int linux_fspick(void);
+	}
+434    AUE_NULL		STD {
+		int linux_pidfd_open(void);
+	}
+435    AUE_NULL		STD {
+		int linux_clone3(void);
+	}
+436    AUE_NULL		STD {
+		int linux_close_range(void);
+	}
+437    AUE_NULL		STD {
+		int linux_openat2(void);
+	}
+438    AUE_NULL		STD {
+		int linux_pidfd_getfd(void);
+	}
+439    AUE_NULL		STD {
+		int linux_faccessat2(void);
+	}
+440    AUE_NULL		STD {
+		int linux_process_madvise(void);
+	}
+441    AUE_NULL		STD {
+		int linux_epoll_pwait2(void);
+	}
+442    AUE_NULL		STD {
+		int linux_mount_setattr(void);
+	}
 ; please, keep this line at the end.
-428	AUE_NULL	UNIMPL	nosys
+443    AUE_NULL        UNIMPL  nosys
 ; vim: syntax=off
diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master
index 9c0cf347d7f4..d7002ed5ac72 100644
--- a/sys/amd64/linux32/syscalls.master
+++ b/sys/amd64/linux32/syscalls.master
@@ -2418,6 +2418,51 @@
 427	AUE_NULL	STD {
 		int linux_io_uring_register(void);
 	}
+428    AUE_NULL		STD {
+		int linux_open_tree(void);
+	}
+429    AUE_NULL		STD {
+		int linux_move_mount(void);
+	}
+430    AUE_NULL		STD {
+		int linux_fsopen(void);
+	}
+431    AUE_NULL		STD {
+		int linux_fsconfig(void);
+	}
+432    AUE_NULL		STD {
+		int linux_fsmount(void);
+	}
+433    AUE_NULL		STD {
+		int linux_fspick(void);
+	}
+434    AUE_NULL		STD {
+		int linux_pidfd_open(void);
+	}
+435    AUE_NULL		STD {
+		int linux_clone3(void);
+	}
+436    AUE_NULL		STD {
+		int linux_close_range(void);
+	}
+437    AUE_NULL		STD {
+		int linux_openat2(void);
+	}
+438    AUE_NULL		STD {
+		int linux_pidfd_getfd(void);
+	}
+439    AUE_NULL		STD {
+		int linux_faccessat2(void);
+	}
+440    AUE_NULL		STD {
+		int linux_process_madvise(void);
+	}
+441    AUE_NULL		STD {
+		int linux_epoll_pwait2(void);
+	}
+442    AUE_NULL		STD {
+		int linux_mount_setattr(void);
+	}
 ; please, keep this line at the end.
-428	AUE_NULL	UNIMPL	nosys
+443    AUE_NULL        UNIMPL  nosys
 ; vim: syntax=off
diff --git a/sys/arm64/linux/syscalls.master b/sys/arm64/linux/syscalls.master
index 8b624d0687b6..c8e7a2da812a 100644
--- a/sys/arm64/linux/syscalls.master
+++ b/sys/arm64/linux/syscalls.master
@@ -1672,8 +1672,89 @@
 		    l_int pkey
 		);
 	}
-
+; Linux 4.11:
+291    AUE_NULL		STD {
+		int linux_statx(
+		    l_int dirfd,
+		    const char *pathname,
+		    l_uint flags,
+		    l_uint mask,
+		    void *statxbuf
+		);
+	}
+; Linux 4.18:
+292    AUE_NULL		STD {
+		int linux_io_pgetevents(void);
+	}
+293    AUE_NULL		STD {
+		int linux_rseq(void);
+	}
+294    AUE_NULL		STD {
+		int linux_kexec_file_load(void);
+	}
+295-423	AUE_NULL	UNIMPL	unimpl_md_syscall
+424	AUE_NULL	STD {
+		int linux_pidfd_send_signal(
+		    l_int pidfd,
+		    l_int sig,
+		    l_siginfo_t *info,
+		    l_uint flags
+		);
+	}
+425	AUE_NULL	STD {
+		int linux_io_uring_setup(void);
+	}
+426	AUE_NULL	STD {
+		int linux_io_uring_enter(void);
+	}
+427	AUE_NULL	STD {
+		int linux_io_uring_register(void);
+	}
+428    AUE_NULL		STD {
+		int linux_open_tree(void);
+	}
+429    AUE_NULL		STD {
+		int linux_move_mount(void);
+	}
+430    AUE_NULL		STD {
+		int linux_fsopen(void);
+	}
+431    AUE_NULL		STD {
+		int linux_fsconfig(void);
+	}
+432    AUE_NULL		STD {
+		int linux_fsmount(void);
+	}
+433    AUE_NULL		STD {
+		int linux_fspick(void);
+	}
+434    AUE_NULL		STD {
+		int linux_pidfd_open(void);
+	}
+435    AUE_NULL		STD {
+		int linux_clone3(void);
+	}
+436    AUE_NULL		STD {
+		int linux_close_range(void);
+	}
+437    AUE_NULL		STD {
+		int linux_openat2(void);
+	}
+438    AUE_NULL		STD {
+		int linux_pidfd_getfd(void);
+	}
+439    AUE_NULL		STD {
+		int linux_faccessat2(void);
+	}
+440    AUE_NULL		STD {
+		int linux_process_madvise(void);
+	}
+441    AUE_NULL		STD {
+		int linux_epoll_pwait2(void);
+	}
+442    AUE_NULL		STD {
+		int linux_mount_setattr(void);
+	}
 ; please, keep this line at the end.
-291	AUE_NULL	UNIMPL	nosys
-
+443    AUE_NULL        UNIMPL  nosys
 ; vim: syntax=off
diff --git a/sys/compat/linux/linux_dummy.c b/sys/compat/linux/linux_dummy.c
index ae551da7fb43..5f174d0e4994 100644
--- a/sys/compat/linux/linux_dummy.c
+++ b/sys/compat/linux/linux_dummy.c
@@ -132,6 +132,21 @@ DUMMY(pwritev2);
 DUMMY(pkey_mprotect);
 DUMMY(pkey_alloc);
 DUMMY(pkey_free);
+DUMMY(open_tree);
+DUMMY(move_mount);
+DUMMY(fsopen);
+DUMMY(fsconfig);
+DUMMY(fsmount);
+DUMMY(fspick);
+DUMMY(pidfd_open);
+DUMMY(clone3);
+DUMMY(close_range);
+DUMMY(openat2);
+DUMMY(pidfd_getfd);
+DUMMY(faccessat2);
+DUMMY(process_madvise);
+DUMMY(epoll_pwait2);
+DUMMY(mount_setattr);
 
 #define DUMMY_XATTR(s)						\
 int								\
diff --git a/sys/i386/linux/syscalls.master b/sys/i386/linux/syscalls.master
index ae053febd656..e2732d211235 100644
--- a/sys/i386/linux/syscalls.master
+++ b/sys/i386/linux/syscalls.master
@@ -2436,6 +2436,51 @@
 427	AUE_NULL	STD {
 		int linux_io_uring_register(void);
 	}
+428    AUE_NULL		STD {
+		int linux_open_tree(void);
+	}
+429    AUE_NULL		STD {
+		int linux_move_mount(void);
+	}
+430    AUE_NULL		STD {
+		int linux_fsopen(void);
+	}
+431    AUE_NULL		STD {
+		int linux_fsconfig(void);
+	}
+432    AUE_NULL		STD {
+		int linux_fsmount(void);
+	}
+433    AUE_NULL		STD {
+		int linux_fspick(void);
+	}
+434    AUE_NULL		STD {
+		int linux_pidfd_open(void);
+	}
+435    AUE_NULL		STD {
+		int linux_clone3(void);
+	}
+436    AUE_NULL		STD {
+		int linux_close_range(void);
+	}
+437    AUE_NULL		STD {
+		int linux_openat2(void);
+	}
+438    AUE_NULL		STD {
+		int linux_pidfd_getfd(void);
+	}
+439    AUE_NULL		STD {
+		int linux_faccessat2(void);
+	}
+440    AUE_NULL		STD {
+		int linux_process_madvise(void);
+	}
+441    AUE_NULL		STD {
+		int linux_epoll_pwait2(void);
+	}
+442    AUE_NULL		STD {
+		int linux_mount_setattr(void);
+	}
 ; please, keep this line at the end.
-428	AUE_NULL	UNIMPL	nosys
+443    AUE_NULL        UNIMPL  nosys
 ; vim: syntax=off