]> git.baikalelectronics.ru Git - kernel.git/commitdiff
epoll: wire up syscall epoll_pwait2
authorWillem de Bruijn <willemb@google.com>
Fri, 18 Dec 2020 22:05:41 +0000 (14:05 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 19 Dec 2020 19:18:38 +0000 (11:18 -0800)
Split off from prev patch in the series that implements the syscall.

Link: https://lkml.kernel.org/r/20201121144401.3727659-4-willemdebruijn.kernel@gmail.com
Signed-off-by: Willem de Bruijn <willemb@google.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
22 files changed:
arch/alpha/kernel/syscalls/syscall.tbl
arch/arm/tools/syscall.tbl
arch/arm64/include/asm/unistd.h
arch/arm64/include/asm/unistd32.h
arch/ia64/kernel/syscalls/syscall.tbl
arch/m68k/kernel/syscalls/syscall.tbl
arch/microblaze/kernel/syscalls/syscall.tbl
arch/mips/kernel/syscalls/syscall_n32.tbl
arch/mips/kernel/syscalls/syscall_n64.tbl
arch/mips/kernel/syscalls/syscall_o32.tbl
arch/parisc/kernel/syscalls/syscall.tbl
arch/powerpc/kernel/syscalls/syscall.tbl
arch/s390/kernel/syscalls/syscall.tbl
arch/sh/kernel/syscalls/syscall.tbl
arch/sparc/kernel/syscalls/syscall.tbl
arch/x86/entry/syscalls/syscall_32.tbl
arch/x86/entry/syscalls/syscall_64.tbl
arch/xtensa/kernel/syscalls/syscall.tbl
include/linux/compat.h
include/linux/syscalls.h
include/uapi/asm-generic/unistd.h
kernel/sys_ni.c

index ee7b01bb7346c9c57843e68a3fff34ad703601fa..a6617067dbe6457a9d8cae8f60823e10813344ce 100644 (file)
 548    common  pidfd_getfd                     sys_pidfd_getfd
 549    common  faccessat2                      sys_faccessat2
 550    common  process_madvise                 sys_process_madvise
+551    common  epoll_pwait2                    sys_epoll_pwait2
index d056a548358ea024fc64f3a107849951a26838d7..20e1170e2e0aaeb52ea10f1802c637164ea79b5e 100644 (file)
 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
index b3b2019f8d16bbeef51948c249dcfb6dbd97a0fb..86a9d7b3eabe9ee254df4abd7f4fd008176d1cf5 100644 (file)
@@ -38,7 +38,7 @@
 #define __ARM_NR_compat_set_tls                (__ARM_NR_COMPAT_BASE + 5)
 #define __ARM_NR_COMPAT_END            (__ARM_NR_COMPAT_BASE + 0x800)
 
-#define __NR_compat_syscalls           441
+#define __NR_compat_syscalls           442
 #endif
 
 #define __ARCH_WANT_SYS_CLONE
index 107f08e03b9fdc4d54b41c7fca707727e1524c92..f4bca2b90218c89e8355dc1c3131d1f4ffccf270 100644 (file)
@@ -889,6 +889,8 @@ __SYSCALL(__NR_pidfd_getfd, sys_pidfd_getfd)
 __SYSCALL(__NR_faccessat2, sys_faccessat2)
 #define __NR_process_madvise 440
 __SYSCALL(__NR_process_madvise, sys_process_madvise)
+#define __NR_epoll_pwait2 441
+__SYSCALL(__NR_epoll_pwait2, sys_epoll_pwait2)
 
 /*
  * Please add new compat syscalls above this comment and update
index b96ed8b8a508999112a1d8065db035d90efaec0c..bfc00f2bd437236823e16abf22f68ca1bc6bebdb 100644 (file)
 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
index 625fb6d3284240e0d8bc96556c0b3ff92b350540..7fe4e45c864c4f36ca7cdd6f410590541f5e6429 100644 (file)
 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
index aae729c95cf99d23e056c510651c6f3126d4ceff..a522adf194abe3a3cd982a92888b58365d3858f7 100644 (file)
 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
index 32817c954435d7c7dba4a126b35054f18ae0d9ee..ad9c3dd0ab1f9d946c7281aa9114d8cdb067f69a 100644 (file)
 438    n32     pidfd_getfd                     sys_pidfd_getfd
 439    n32     faccessat2                      sys_faccessat2
 440    n32     process_madvise                 sys_process_madvise
+441    n32     epoll_pwait2                    sys_epoll_pwait2
index 9e4ea3c31b1ce026fdad266866b60be6426d882b..91649690b52f1b25ac229ad4e224366861ab66b9 100644 (file)
 438    n64     pidfd_getfd                     sys_pidfd_getfd
 439    n64     faccessat2                      sys_faccessat2
 440    n64     process_madvise                 sys_process_madvise
+441    n64     epoll_pwait2                    sys_epoll_pwait2
index 29f5f28cf5cea83d6119637ea57d40ad6abe4d40..4bad0c40aed6bcfa46294cd0be3d3566137085e0 100644 (file)
 438    o32     pidfd_getfd                     sys_pidfd_getfd
 439    o32     faccessat2                      sys_faccessat2
 440    o32     process_madvise                 sys_process_madvise
+441    o32     epoll_pwait2                    sys_epoll_pwait2                compat_sys_epoll_pwait2
index f375ea528e59c34e799e16f9cc9ec8a97cc32fec..6bcc31966b4460b28a863384f97ea5c97d7b027c 100644 (file)
 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                compat_sys_epoll_pwait2
index 1275daec7fec365024fd50d2b43d42616d829b20..f744eb5cba887d398e150e9ef9fbb1293d5fe08f 100644 (file)
 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                compat_sys_epoll_pwait2
index 28c16800048344821461943d58f99ff1f50ab4c6..14f6525886a83096e31fe1bfc10fca391dfe72a0 100644 (file)
 438  common    pidfd_getfd             sys_pidfd_getfd                 sys_pidfd_getfd
 439  common    faccessat2              sys_faccessat2                  sys_faccessat2
 440  common    process_madvise         sys_process_madvise             sys_process_madvise
+441  common    epoll_pwait2            sys_epoll_pwait2                sys_epoll_pwait2
index 783738448ff555f66baa8d9b559dce0d3e08b325..9df40ac0ebc05f584b43dc23777f027cddeff6b3 100644 (file)
 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
index 78160260991be726ff888371314cfd10b82d5b6a..c7da4c3271e62b6b77bbff6254627285e7daa6a9 100644 (file)
 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
index 0d0667a9fbd70aeb9e297342b9f855a457d45ea4..874aeacde2dd157cd1d8f41e34f74598a4ef3f5a 100644 (file)
 438    i386    pidfd_getfd             sys_pidfd_getfd
 439    i386    faccessat2              sys_faccessat2
 440    i386    process_madvise         sys_process_madvise
+441    i386    epoll_pwait2            sys_epoll_pwait2                compat_sys_epoll_pwait2
index 379819244b91d275b2c98f7ff38a59049c24b42a..78672124d28be0da465300ee9a301bab59c1ac1d 100644 (file)
 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
 
 #
 # Due to a historical design error, certain syscalls are numbered differently
index b070f272995d6447895287704a0c76237619c2cc..46116a28eeed3bd0b250ab06874f6238103720a4 100644 (file)
 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
index 400c0941c8aff65d2914bf40568a620bdd8f1b4d..6e65be75360321444993b4f58df13d4d9fb04562 100644 (file)
@@ -537,6 +537,12 @@ asmlinkage long compat_sys_epoll_pwait(int epfd,
                        int maxevents, int timeout,
                        const compat_sigset_t __user *sigmask,
                        compat_size_t sigsetsize);
+asmlinkage long compat_sys_epoll_pwait2(int epfd,
+                       struct epoll_event __user *events,
+                       int maxevents,
+                       const struct __kernel_timespec __user *timeout,
+                       const compat_sigset_t __user *sigmask,
+                       compat_size_t sigsetsize);
 
 /* fs/fcntl.c */
 asmlinkage long compat_sys_fcntl(unsigned int fd, unsigned int cmd,
index df0c3c74609ebec03ae26665d52f14049b4393c9..f3929aff39cf272fb73cd454516accc1146b9f4e 100644 (file)
@@ -362,6 +362,11 @@ asmlinkage long sys_epoll_pwait(int epfd, struct epoll_event __user *events,
                                int maxevents, int timeout,
                                const sigset_t __user *sigmask,
                                size_t sigsetsize);
+asmlinkage long sys_epoll_pwait2(int epfd, struct epoll_event __user *events,
+                                int maxevents,
+                                const struct __kernel_timespec __user *timeout,
+                                const sigset_t __user *sigmask,
+                                size_t sigsetsize);
 
 /* fs/fcntl.c */
 asmlinkage long sys_dup(unsigned int fildes);
index fc48c64700eb8a537a9045f10ccecd8e39d66d09..728752917785efe99cc6a325edbb488a58ff4674 100644 (file)
@@ -859,9 +859,11 @@ __SYSCALL(__NR_pidfd_getfd, sys_pidfd_getfd)
 __SYSCALL(__NR_faccessat2, sys_faccessat2)
 #define __NR_process_madvise 440
 __SYSCALL(__NR_process_madvise, sys_process_madvise)
+#define __NR_epoll_pwait2 441
+__SC_COMP(__NR_epoll_pwait2, sys_epoll_pwait2, compat_sys_epoll_pwait2)
 
 #undef __NR_syscalls
-#define __NR_syscalls 441
+#define __NR_syscalls 442
 
 /*
  * 32 bit systems traditionally used different
index f27ac94d5fa7270ba9f272be1bcba6a903149206..19aa806890d52f62aff18e151ec659448fae0ca9 100644 (file)
@@ -68,6 +68,8 @@ COND_SYSCALL(epoll_create1);
 COND_SYSCALL(epoll_ctl);
 COND_SYSCALL(epoll_pwait);
 COND_SYSCALL_COMPAT(epoll_pwait);
+COND_SYSCALL(epoll_pwait2);
+COND_SYSCALL_COMPAT(epoll_pwait2);
 
 /* fs/fcntl.c */