From patchwork Tue May 24 00:04:34 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yury Norov X-Patchwork-Id: 9132537 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id B8BAD607D6 for ; Tue, 24 May 2016 00:08:23 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id AB1232824F for ; Tue, 24 May 2016 00:08:23 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9F3C72825E; Tue, 24 May 2016 00:08:23 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id E897228252 for ; Tue, 24 May 2016 00:08:21 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1b4zro-00069a-M9; Tue, 24 May 2016 00:06:36 +0000 Received: from mail-bl2on0090.outbound.protection.outlook.com ([65.55.169.90] helo=na01-bl2-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1b4zqy-0005Pm-TM for linux-arm-kernel@lists.infradead.org; Tue, 24 May 2016 00:05:52 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-caviumnetworks-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=fxh8EdlYR/RLQCi+54rgcjQKSa6kSm26rtBtwOgXXeQ=; b=BFwSWFaZ+2Y0bSVuddvU2Je91LnnyovICE1PtT7jSVEbCrFbJumaowXJOohcuPrhQo35Nc0PRblruJ3yA1muqCt390sSlk1/HAqT8gTYNEy2Wixy4tFpsbvP9aff6S/SlKJObwFUtdZKWxSYE6K5x8LI+vNkT0d80LLrXpa2pzA= Authentication-Results: arndb.de; dkim=none (message not signed) header.d=none;arndb.de; dmarc=none action=none header.from=caviumnetworks.com; Received: from localhost (50.233.148.158) by CY1PR07MB2230.namprd07.prod.outlook.com (10.164.112.144) with Microsoft SMTP Server (TLS) id 15.1.497.12; Tue, 24 May 2016 00:05:21 +0000 From: Yury Norov To: , , , , , , , Subject: [PATCH 05/23] all: wrap needed syscalls in generic unistd Date: Tue, 24 May 2016 03:04:34 +0300 Message-ID: <1464048292-30136-6-git-send-email-ynorov@caviumnetworks.com> X-Mailer: git-send-email 2.5.0 In-Reply-To: <1464048292-30136-1-git-send-email-ynorov@caviumnetworks.com> References: <1464048292-30136-1-git-send-email-ynorov@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [50.233.148.158] X-ClientProxiedBy: DM3PR13CA0002.namprd13.prod.outlook.com (10.164.193.12) To CY1PR07MB2230.namprd07.prod.outlook.com (10.164.112.144) X-MS-Office365-Filtering-Correlation-Id: 8e3eea5f-0b71-45a7-d566-08d3836718fd X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2230; 2:LEMvImbpp+ogUypiFASEPSyPOlWb30IWNMcPujky+IFKS+GLfJ8rvoa2LgtBmxg2fkLu+gI56pEfLGkXBqmzG/Kt3uf+P6IhdYOPZ54Ig7zeETq7GuVP/UPRsgDuW81d9JuhbD1m600Z8tje/mAFYmIxGXMqQgVuvhF/GsiWXp8kOLL8DAItHkIHwrYJYjHa; 3:o9CZHyk+pbusHcq/3vZ5I0dJ2St8Ngq07veHWCrZ81SlY5W6vKTwdRfp1qq7Fq9hRBjxqp6kk0fjh8eLu9x8TXmgTparxzSN40vuX8QSQnpl416jOpDPPWfPHH+jQxRZ; 25:/CcVGNsSUCE+KdivWKRdswDjXTFoHSOCoynPbI6ckB9aSx/lNq1mc1GLZg0EbXagWxZsO84cCMhIAzDRRyzFKUFM0CQUE71aLgi/cD+VgDSflyocXlvc1SJkT/53Kghk7XlIUToYhDi+eYk+oO52Glbv8INmccIpraI6ymMUh/41nN5CKCkFXirVYAhaC5GMYzRFC7+c35mYV8CDbpzQW2d6+J4FuvyK80+c5qefBTuXHDXViEscItK6yAi4vdJtPJiFN+TGycNNb6OTWWMFWhlWyo2NSQRMdKlEsLTJbzIA+mJCk29SlEgmbbh/5jE/Wcj5sX1Yqr3J3duZguOTknYwXPI+KM85px59cxmczGoO/KJvqngeLPnvZo26/EJA7K+20a4qgByka3tFlmdKJVOpbtNta3qJCdYg353QFQE= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR07MB2230; X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2230; 20:TXu1OBO+ah0eMToiRWJz8BJLbRf+8sKAyK405JIV0ujOPDRbMRfhDcJpcxn2r4ydvJdmgYVKgNMruzh6WtXr1JoILygQnDxBM4MzSg7HiB1d1nErGv4SMgWJ52L0X+HuaJW7XrgfmROpRHyAvAru7lDUQJtsUyNS47wNw2yA2J9zizXBuDHG1m9+KsBBSH0dunHS+tH/MvVUiyHuQle+Zhp2Ebkip0jv0nNfBEjSzUTj8yT76Q71jjL0GxgyKkz178nojaAN9uWfC343XCC8dWHhE43/1tP6wahGV3D2W0LpbQ9sf35WyGlZzEGAJ9tBNmhpuf0xDE4nM1Jph7zts+rKeZHkrxTbVqRz4AgikU01XPv3XFT+uRTTe14tUflzOvH2uiC+1bbnkQaBc0seNqlVDDYQQJQsoNC8a0mVFUYmDbQO7KORKH7oAcTAxg0FUlMe8qiNshVr9NKvdvUWEOGrp3O8rQqtEk8XNx6mAGKOi3QrQ+hK3YU+hdaz3gkdOd4N2oHlWpImrKYL5EVU2yTVWW0WyDEXTjWiWXzTi+XIYHn3DaCINhNIs25c7wj1eCCqoJ9ZrUNgTYIRI+YVN8DSG7Rn1RLY2u9UgNn7wsQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001); SRVR:CY1PR07MB2230; BCL:0; PCL:0; RULEID:; SRVR:CY1PR07MB2230; X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2230; 4:w+G/FS7dYjBeWfIMMk5IOlONRV+eUPx/H21znAbTzfGdvX0x3zjtZ46g6VcwbwK0WOOQ7GhuAvsGrfBvUVwcQq5HMBwdAUQoCjCSoROuhGHm9ZDVOjAks4XOYUiiyc29uQTxEWK2KDdvyD5b224Bi8O0Lx6oU1Ha5BMl8mD0UntqpCVo/w5C2+8nqtqtvL34phQSc0Fr8oR0lvjNscSY4lFhzvciqqQ3ZUCnsE4UuI52rlN51ghvnpusuCdCSco9faNvmmOim61Wluc97VWWYgjxBdT2UJ0nnCpQHrUr6/Kt0RP7ee7AQHS7RKh4b2PXEVPPc+f/8twr19t7bvyM1Oia0olwBYuEMC08KT0MrGHDZecube27ruqB3GeMQdzC X-Forefront-PRVS: 09525C61DB X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(19580395003)(36756003)(5004730100002)(19580405001)(5008740100001)(2906002)(229853001)(2201001)(586003)(47776003)(33646002)(4326007)(66066001)(6116002)(76506005)(42186005)(92566002)(77096005)(2950100001)(189998001)(5001770100001)(81166006)(5003940100001)(76176999)(50986999)(50226002)(50466002)(48376002)(8676002)(41533002)(2101003); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR07MB2230; H:localhost; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2230; 23:AK0zYTyQysuBHeHZdVqwf6Cry4Rm4xcnIDYqoduV91wPDvTfr7b5tGpvCAo87mc7Ih05qc+qnOt/7vudyIN8BWRbo9Pi2nFcnAWsYaJR3FgmsuAiPBEDuMTWN+MvC/QLbFbfvmZdNIuUG1E7CYMWJ5QtFQpQuIHwzUpatDNGV5WVgodyrjHIp/Pac/9MwHtw9wh0H5S7Wb80eYGWZWzEch9qgp+CXRi03G08/ukd5qpl7l8R/4h4G/qOsuq7H2CnsErXijTcp7T6bhfBuVskN1zSdEsfDK5KgfFHOSt9RW4zsaZsLuy/ksOwZiryrMpt+iQOUAaoaQHcHVA4f45iKMtjzmrxy2ahE42bP2i1okotxmBV0vobR198abT8MHXkzw2A3FXCr5xegiUA4+0n4nSTxfF5lpkDO+q/c9AG22bCmw4HfsMW8gVtFc8KvEnZJd8xXxjaDe+qKSYRo8G03X7rOdT9vUkyfeZDXu1+HWfQtQza/4PJW2KbhRVKDL3X6OBGzO8uy2P89OMIjOHovEGUFEDfkoxmuRBLCf3Oh3bEecRtoohtBuURZsiZ9HnmHtayq/ORu4oE6qjpHJTJ7r9Ll4XQ3A5fYLg3tP08pGUxNHLBAzcJt64xkonshTC7wvCpGHzqpTvyhmP5tbcejCl/30aG8Y2yY0MJd1+RpXTx4ArfQ62QD7kd5PURntYShUAUQtOKSzDcjItuXEt28uiXsyXRrYavk2FKMSPLLnyi1FULOYAnswYCtDtnurix1HBr/eaq3XO7zMJxcjyUGIttTwQJFpfcYq1nuePlVNxf0LERSBQsTpXiqeQyFkqzgeQHpDM5UAVTmrzdw14+HMgMyw4lplZTqnhKlZtXos9f+a7RToUdfnuNwKCh5TFEFHbgFqfzDgNhiqh9SUDWVJ6xp+vcRgeHZYpAAPg8wqI= X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2230; 5:xcbl/HdrwFiI1RZ9gPtky185tNCTB6gWV+tx+FXKCM87fmzRHokfzH1BC1ufC0RWTJWLfRaLs1MO2AqGHK4RaNdK0Rhwn7HNhFVBSqmiOr9cCIWWr86bj9ksd6yK4szsvxhntaz0x6s+G5NVJOqQzg==; 24:KBjizR+0Ze5Giftt6voqV1f8PSEAIS6ka5A5turDg+BrFA+gr+4w/BebpIYi5dCaoa7PvdCSzGuw0FvGav58tai/G1NE0O4APFQxfo5EQ0s=; 7:G/b03hLxfCfMOI3KmiqrcI4eXBa+6TJ6aQAHeXgPKuQ0CmfzPkrsoJedOTzq0c3yFG2XA1ARuvOEMPanfFJmeXctNUuCjyTsBSf4cOKXM1jpdWn1mgKgld9o36lRjmzlXOcd26z4AmO2vxt3VMIL7xTK5vcNC+23QjIZChFmJqAKhyCobPjBnvZHk95lSeKj SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 May 2016 00:05:21.1499 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2230 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160523_170545_564080_7781DD73 X-CRM114-Status: UNSURE ( 7.27 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kilobyte@angband.pl, pinskia@gmail.com, szabolcs.nagy@arm.com, Nathan_Lynch@mentor.com, heiko.carstens@de.ibm.com, agraf@suse.de, geert@linux-m68k.org, Prasun.Kapoor@caviumnetworks.com, klimov.linux@gmail.com, broonie@kernel.org, ynorov@caviumnetworks.com, schwidefsky@de.ibm.com, bamvor.zhangjian@huawei.com, philipp.tomsich@theobroma-systems.com, joseph@codesourcery.com, christoph.muellner@theobroma-systems.com Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP As generic unistd syscall table is written in C, syscall prototypes declaration is needed. It's added to compat header. Signed-off-by: Yury Norov --- include/linux/compat.h | 225 +++++++++++++++++++++++++++++++++++++ include/uapi/asm-generic/unistd.h | 227 +++++++++++++++++++------------------- 2 files changed, 338 insertions(+), 114 deletions(-) diff --git a/include/linux/compat.h b/include/linux/compat.h index 4eba16e..248e015 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h @@ -789,6 +789,231 @@ asmlinkage long notrace compat_SyS##name(__MAP(x,__SC_COMPAT_TYPE,__VA_ARGS__)) } #endif +/* Compat wrappers */ +#include +asmlinkage long compat_sys_creat(const char __user *pathname, umode_t mode); +asmlinkage long compat_sys_link(const char __user *oldname, + const char __user *newname); +asmlinkage long compat_sys_chdir(const char __user *filename); +asmlinkage long compat_sys_mknod(const char __user *filename, umode_t mode, + unsigned dev); +asmlinkage long compat_sys_chmod(const char __user *filename, umode_t mode); +asmlinkage long compat_sys_oldumount(char __user *name); +asmlinkage long compat_sys_access(const char __user *filename, int mode); +asmlinkage long compat_sys_rename(const char __user *oldname, + const char __user *newname); +asmlinkage long compat_sys_mkdir(const char __user *pathname, umode_t mode); +asmlinkage long compat_sys_rmdir(const char __user *pathname); +asmlinkage long compat_sys_pipe(int __user *fildes); +asmlinkage long compat_sys_brk(unsigned long brk); +asmlinkage long compat_sys_signal(int sig, __sighandler_t handler); +asmlinkage long compat_sys_acct(const char __user *name); +asmlinkage long compat_sys_umount(char __user *name, int flags); +asmlinkage long compat_sys_chroot(const char __user *filename); + +#ifdef CONFIG_OLD_SIGSUSPEND +asmlinkage long compat_sys_sigsuspend(old_sigset_t mask); +#endif + +#ifdef CONFIG_OLD_SIGSUSPEND3 +asmlinkage long compat_sys_sigsuspend(int unused1, int unused2, old_sigset_t mask); +#endif + +asmlinkage long compat_sys_sethostname(char __user *name, int len); +asmlinkage long compat_sys_symlink(const char __user *old, const char __user *new); +asmlinkage long compat_sys_readlink(const char __user *path, + char __user *buf, int bufsiz); +asmlinkage long compat_sys_uselib(const char __user *library); +asmlinkage long compat_sys_swapon(const char __user *specialfile, int swap_flags); +asmlinkage long compat_sys_reboot(int magic1, int magic2, unsigned int cmd, + void __user *arg); +asmlinkage long compat_sys_munmap(unsigned long addr, size_t len); +asmlinkage long compat_sys_munmap(unsigned long addr, size_t len); +asmlinkage long compat_sys_syslog(int type, char __user *buf, int len); +asmlinkage long compat_sys_swapoff(const char __user *specialfile); +asmlinkage long compat_sys_setdomainname(char __user *name, int len); +asmlinkage long compat_sys_newuname(struct new_utsname __user *name); +asmlinkage long compat_sys_mprotect(unsigned long start, size_t len, + unsigned long prot); +asmlinkage long compat_sys_init_module(void __user *umod, unsigned long len, + const char __user *uargs); +asmlinkage long compat_sys_delete_module(const char __user *name_user, + unsigned int flags); +asmlinkage long compat_sys_quotactl(unsigned int cmd, const char __user *special, + qid_t id, void __user *addr); +asmlinkage long compat_sys_bdflush(int func, long data); +asmlinkage long compat_sys_sysfs(int option, + unsigned long arg1, unsigned long arg2); +asmlinkage long compat_sys_llseek(unsigned int fd, unsigned long offset_high, + unsigned long offset_low, loff_t __user *result, + unsigned int whence); +asmlinkage long compat_sys_msync(unsigned long start, size_t len, int flags); +asmlinkage long compat_sys_mlock(unsigned long start, size_t len); +asmlinkage long compat_sys_munlock(unsigned long start, size_t len); +asmlinkage long compat_sys_sched_setparam(pid_t pid, + struct sched_param __user *param); +asmlinkage long compat_sys_sched_getparam(pid_t pid, + struct sched_param __user *param); +asmlinkage long compat_sys_sched_setscheduler(pid_t pid, int policy, + struct sched_param __user *param); +asmlinkage long compat_sys_mremap(unsigned long addr, + unsigned long old_len, unsigned long new_len, + unsigned long flags, unsigned long new_addr); +asmlinkage long compat_sys_poll(struct pollfd __user *ufds, unsigned int nfds, + int timeout); +asmlinkage long compat_sys_prctl(int option, unsigned long arg2, unsigned long arg3, + unsigned long arg4, unsigned long arg5); +asmlinkage long compat_sys_getcwd(char __user *buf, unsigned long size); +asmlinkage long compat_sys_capget(cap_user_header_t header, + cap_user_data_t dataptr); +asmlinkage long compat_sys_capset(cap_user_header_t header, + const cap_user_data_t data); +asmlinkage long compat_sys_lchown(const char __user *filename, + uid_t user, gid_t group); +asmlinkage long compat_sys_getgroups(int gidsetsize, gid_t __user *grouplist); +asmlinkage long compat_sys_setgroups(int gidsetsize, gid_t __user *grouplist); +asmlinkage long compat_sys_getresuid(uid_t __user *ruid, uid_t __user *euid, uid_t __user *suid); +asmlinkage long compat_sys_getresgid(gid_t __user *rgid, gid_t __user *egid, gid_t __user *sgid); +asmlinkage long compat_sys_chown(const char __user *filename, + uid_t user, gid_t group); +asmlinkage long compat_sys_pivot_root(const char __user *new_root, + const char __user *put_old); +asmlinkage long compat_sys_mincore(unsigned long start, size_t len, + unsigned char __user * vec); +asmlinkage long compat_sys_madvise(unsigned long start, size_t len, int behavior); +asmlinkage long compat_sys_setxattr(const char __user *path, const char __user *name, + const void __user *value, size_t size, int flags); +asmlinkage long compat_sys_lsetxattr(const char __user *path, const char __user *name, + const void __user *value, size_t size, int flags); +asmlinkage long compat_sys_fsetxattr(int fd, const char __user *name, + const void __user *value, size_t size, int flags); +asmlinkage long compat_sys_getdents64(unsigned int fd, + struct linux_dirent64 __user *dirent, + unsigned int count); +asmlinkage long compat_sys_getxattr(const char __user *path, const char __user *name, + void __user *value, size_t size); +asmlinkage long compat_sys_lgetxattr(const char __user *path, const char __user *name, + void __user *value, size_t size); +asmlinkage long compat_sys_fgetxattr(int fd, const char __user *name, + void __user *value, size_t size); +asmlinkage long compat_sys_listxattr(const char __user *path, char __user *list, + size_t size); +asmlinkage long compat_sys_llistxattr(const char __user *path, char __user *list, + size_t size); +asmlinkage long compat_sys_flistxattr(int fd, char __user *list, size_t size); +asmlinkage long compat_sys_listxattr(const char __user *path, char __user *list, + size_t size); +asmlinkage long compat_sys_llistxattr(const char __user *path, char __user *list, + size_t size); +asmlinkage long compat_sys_flistxattr(int fd, char __user *list, size_t size); +asmlinkage long compat_sys_removexattr(const char __user *path, + const char __user *name); +asmlinkage long compat_sys_lremovexattr(const char __user *path, + const char __user *name); +asmlinkage long compat_sys_fremovexattr(int fd, const char __user *name); +asmlinkage long compat_sys_set_tid_address(int __user *tidptr); +asmlinkage long compat_sys_epoll_ctl(int epfd, int op, int fd, + struct epoll_event __user *event); +asmlinkage long compat_sys_epoll_wait(int epfd, struct epoll_event __user *events, + int maxevents, int timeout); +asmlinkage long compat_sys_io_destroy(aio_context_t ctx); +asmlinkage long compat_sys_io_cancel(aio_context_t ctx_id, struct iocb __user *iocb, + struct io_event __user *result); +asmlinkage long compat_sys_mq_unlink(const char __user *name); +asmlinkage long compat_sys_add_key(const char __user *_type, + const char __user *_description, + const void __user *_payload, + size_t plen, + key_serial_t destringid); +asmlinkage long compat_sys_request_key(const char __user *_type, + const char __user *_description, + const char __user *_callout_info, + key_serial_t destringid); +asmlinkage long compat_sys_remap_file_pages(unsigned long start, unsigned long size, + unsigned long prot, unsigned long pgoff, + unsigned long flags); +asmlinkage long compat_sys_inotify_add_watch(int fd, const char __user *path, + u32 mask); +asmlinkage long compat_sys_mknodat(int dfd, const char __user * filename, umode_t mode, + unsigned dev); +asmlinkage long compat_sys_mkdirat(int dfd, const char __user * pathname, umode_t mode); +asmlinkage long compat_sys_fchownat(int dfd, const char __user *filename, uid_t user, + gid_t group, int flag); +asmlinkage long compat_sys_unlinkat(int dfd, const char __user * pathname, int flag); +asmlinkage long compat_sys_renameat(int olddfd, const char __user * oldname, + int newdfd, const char __user * newname); +asmlinkage long compat_sys_symlinkat(const char __user * oldname, + int newdfd, const char __user * newname); +asmlinkage long compat_sys_linkat(int olddfd, const char __user *oldname, + int newdfd, const char __user *newname, int flags); +asmlinkage long compat_sys_readlinkat(int dfd, const char __user *path, char __user *buf, + int bufsiz); +asmlinkage long compat_sys_fchmodat(int dfd, const char __user * filename, + umode_t mode); +asmlinkage long compat_sys_faccessat(int dfd, const char __user *filename, int mode); +asmlinkage long compat_sys_unshare(unsigned long unshare_flags); +asmlinkage long compat_sys_splice(int fd_in, loff_t __user *off_in, + int fd_out, loff_t __user *off_out, + size_t len, unsigned int flags); +asmlinkage long compat_sys_tee(int fdin, int fdout, size_t len, unsigned int flags); +asmlinkage long compat_sys_getcpu(unsigned __user *cpu, unsigned __user *node, struct getcpu_cache __user *cache); +asmlinkage long compat_sys_pipe2(int __user *fildes, int flags); +asmlinkage long compat_sys_perf_event_open( + struct perf_event_attr __user *attr_uptr, + pid_t pid, int cpu, int group_fd, unsigned long flags); + +#ifdef CONFIG_CLONE_BACKWARDS +asmlinkage long compat_sys_clone(unsigned long, unsigned long, int __user *, unsigned long, + int __user *); +#else +#ifdef CONFIG_CLONE_BACKWARDS3 +asmlinkage long compat_sys_clone(unsigned long, unsigned long, int, int __user *, + int __user *, unsigned long); +#else +asmlinkage long compat_sys_clone(unsigned long, unsigned long, int __user *, + int __user *, unsigned long); +#endif +#endif + +asmlinkage long compat_sys_prlimit64(pid_t pid, unsigned int resource, + const struct rlimit64 __user *new_rlim, + struct rlimit64 __user *old_rlim); +asmlinkage long compat_sys_name_to_handle_at(int dfd, const char __user *name, + struct file_handle __user *handle, + int __user *mnt_id, int flag); +asmlinkage long compat_sys_kcmp(pid_t pid1, pid_t pid2, int type, + unsigned long idx1, unsigned long idx2); +asmlinkage long compat_sys_finit_module(int fd, const char __user *uargs, int flags); +asmlinkage long compat_sys_sched_setattr(pid_t pid, + struct sched_attr __user *attr, + unsigned int flags); +asmlinkage long compat_sys_sched_getattr(pid_t pid, + struct sched_attr __user *attr, + unsigned int size, + unsigned int flags); +asmlinkage long compat_sys_renameat2(int olddfd, const char __user *oldname, + int newdfd, const char __user *newname, + unsigned int flags); +asmlinkage long compat_sys_seccomp(unsigned int op, unsigned int flags, + const char __user *uargs); +asmlinkage long compat_sys_getrandom(char __user *buf, size_t count, + unsigned int flags); +asmlinkage long compat_sys_memfd_create(const char __user *uname_ptr, unsigned int flags); +asmlinkage long compat_sys_bpf(int cmd, union bpf_attr *attr, unsigned int size); +asmlinkage long compat_sys_socketpair(int, int, int, int __user *); +asmlinkage long compat_sys_bind(int, struct sockaddr __user *, int); +asmlinkage long compat_sys_connect(int, struct sockaddr __user *, int); +asmlinkage long compat_sys_accept4(int, struct sockaddr __user *, int __user *, int); +asmlinkage long compat_sys_getsockname(int, struct sockaddr __user *, int __user *); +asmlinkage long compat_sys_getpeername(int, struct sockaddr __user *, int __user *); +asmlinkage long compat_sys_sendto(int, void __user *, size_t, unsigned, + struct sockaddr __user *, int); +asmlinkage long compat_sys_mlock2(unsigned long start, size_t len, int flags); + +asmlinkage long compat_sys_copy_file_range(int fd_in, loff_t __user *off_in, + int fd_out, loff_t __user *off_out, + size_t len, unsigned int flags); + #endif /* CONFIG_COMPAT_WRAPPER */ #endif /* _LINUX_COMPAT_H */ diff --git a/include/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h index 7e91d83..6ed4613 100644 --- a/include/uapi/asm-generic/unistd.h +++ b/include/uapi/asm-generic/unistd.h @@ -36,43 +36,43 @@ #define __NR_io_setup 0 __SC_COMP(__NR_io_setup, sys_io_setup, compat_sys_io_setup) #define __NR_io_destroy 1 -__SYSCALL(__NR_io_destroy, sys_io_destroy) +__SC_WRAP(__NR_io_destroy, sys_io_destroy) #define __NR_io_submit 2 __SC_COMP(__NR_io_submit, sys_io_submit, compat_sys_io_submit) #define __NR_io_cancel 3 -__SYSCALL(__NR_io_cancel, sys_io_cancel) +__SC_WRAP(__NR_io_cancel, sys_io_cancel) #define __NR_io_getevents 4 __SC_COMP(__NR_io_getevents, sys_io_getevents, compat_sys_io_getevents) /* fs/xattr.c */ #define __NR_setxattr 5 -__SYSCALL(__NR_setxattr, sys_setxattr) +__SC_WRAP(__NR_setxattr, sys_setxattr) #define __NR_lsetxattr 6 -__SYSCALL(__NR_lsetxattr, sys_lsetxattr) +__SC_WRAP(__NR_lsetxattr, sys_lsetxattr) #define __NR_fsetxattr 7 -__SYSCALL(__NR_fsetxattr, sys_fsetxattr) +__SC_WRAP(__NR_fsetxattr, sys_fsetxattr) #define __NR_getxattr 8 -__SYSCALL(__NR_getxattr, sys_getxattr) +__SC_WRAP(__NR_getxattr, sys_getxattr) #define __NR_lgetxattr 9 -__SYSCALL(__NR_lgetxattr, sys_lgetxattr) +__SC_WRAP(__NR_lgetxattr, sys_lgetxattr) #define __NR_fgetxattr 10 -__SYSCALL(__NR_fgetxattr, sys_fgetxattr) +__SC_WRAP(__NR_fgetxattr, sys_fgetxattr) #define __NR_listxattr 11 -__SYSCALL(__NR_listxattr, sys_listxattr) +__SC_WRAP(__NR_listxattr, sys_listxattr) #define __NR_llistxattr 12 -__SYSCALL(__NR_llistxattr, sys_llistxattr) +__SC_WRAP(__NR_llistxattr, sys_llistxattr) #define __NR_flistxattr 13 -__SYSCALL(__NR_flistxattr, sys_flistxattr) +__SC_WRAP(__NR_flistxattr, sys_flistxattr) #define __NR_removexattr 14 -__SYSCALL(__NR_removexattr, sys_removexattr) +__SC_WRAP(__NR_removexattr, sys_removexattr) #define __NR_lremovexattr 15 -__SYSCALL(__NR_lremovexattr, sys_lremovexattr) +__SC_WRAP(__NR_lremovexattr, sys_lremovexattr) #define __NR_fremovexattr 16 -__SYSCALL(__NR_fremovexattr, sys_fremovexattr) +__SC_WRAP(__NR_fremovexattr, sys_fremovexattr) /* fs/dcache.c */ #define __NR_getcwd 17 -__SYSCALL(__NR_getcwd, sys_getcwd) +__SC_WRAP(__NR_getcwd, sys_getcwd) /* fs/cookies.c */ #define __NR_lookup_dcookie 18 @@ -86,7 +86,7 @@ __SYSCALL(__NR_eventfd2, sys_eventfd2) #define __NR_epoll_create1 20 __SYSCALL(__NR_epoll_create1, sys_epoll_create1) #define __NR_epoll_ctl 21 -__SYSCALL(__NR_epoll_ctl, sys_epoll_ctl) +__SC_WRAP(__NR_epoll_ctl, sys_epoll_ctl) #define __NR_epoll_pwait 22 __SC_COMP(__NR_epoll_pwait, sys_epoll_pwait, compat_sys_epoll_pwait) @@ -102,7 +102,7 @@ __SC_COMP_3264(__NR3264_fcntl, sys_fcntl64, sys_fcntl, compat_sys_fcntl64) #define __NR_inotify_init1 26 __SYSCALL(__NR_inotify_init1, sys_inotify_init1) #define __NR_inotify_add_watch 27 -__SYSCALL(__NR_inotify_add_watch, sys_inotify_add_watch) +__SC_WRAP(__NR_inotify_add_watch, sys_inotify_add_watch) #define __NR_inotify_rm_watch 28 __SYSCALL(__NR_inotify_rm_watch, sys_inotify_rm_watch) @@ -122,17 +122,17 @@ __SYSCALL(__NR_flock, sys_flock) /* fs/namei.c */ #define __NR_mknodat 33 -__SYSCALL(__NR_mknodat, sys_mknodat) +__SC_WRAP(__NR_mknodat, sys_mknodat) #define __NR_mkdirat 34 -__SYSCALL(__NR_mkdirat, sys_mkdirat) +__SC_WRAP(__NR_mkdirat, sys_mkdirat) #define __NR_unlinkat 35 -__SYSCALL(__NR_unlinkat, sys_unlinkat) +__SC_WRAP(__NR_unlinkat, sys_unlinkat) #define __NR_symlinkat 36 -__SYSCALL(__NR_symlinkat, sys_symlinkat) +__SC_WRAP(__NR_symlinkat, sys_symlinkat) #define __NR_linkat 37 -__SYSCALL(__NR_linkat, sys_linkat) +__SC_WRAP(__NR_linkat, sys_linkat) #define __NR_renameat 38 -__SYSCALL(__NR_renameat, sys_renameat) +__SC_WRAP(__NR_renameat, sys_renameat) /* fs/namespace.c */ #define __NR_umount2 39 @@ -140,7 +140,7 @@ __SYSCALL(__NR_umount2, sys_umount) #define __NR_mount 40 __SC_COMP(__NR_mount, sys_mount, compat_sys_mount) #define __NR_pivot_root 41 -__SYSCALL(__NR_pivot_root, sys_pivot_root) +__SC_WRAP(__NR_pivot_root, sys_pivot_root) /* fs/nfsctl.c */ #define __NR_nfsservctl 42 @@ -163,23 +163,23 @@ __SC_COMP_3264(__NR3264_ftruncate, sys_ftruncate64, sys_ftruncate, \ #define __NR_fallocate 47 __SC_COMP(__NR_fallocate, sys_fallocate, compat_sys_fallocate) #define __NR_faccessat 48 -__SYSCALL(__NR_faccessat, sys_faccessat) +__SC_WRAP(__NR_faccessat, sys_faccessat) #define __NR_chdir 49 -__SYSCALL(__NR_chdir, sys_chdir) +__SC_WRAP(__NR_chdir, sys_chdir) #define __NR_fchdir 50 __SYSCALL(__NR_fchdir, sys_fchdir) #define __NR_chroot 51 -__SYSCALL(__NR_chroot, sys_chroot) +__SC_WRAP(__NR_chroot, sys_chroot) #define __NR_fchmod 52 __SYSCALL(__NR_fchmod, sys_fchmod) #define __NR_fchmodat 53 -__SYSCALL(__NR_fchmodat, sys_fchmodat) +__SC_WRAP(__NR_fchmodat, sys_fchmodat) #define __NR_fchownat 54 -__SYSCALL(__NR_fchownat, sys_fchownat) +__SC_WRAP(__NR_fchownat, sys_fchownat) #define __NR_fchown 55 __SYSCALL(__NR_fchown, sys_fchown) #define __NR_openat 56 -__SC_COMP(__NR_openat, sys_openat, compat_sys_openat) +__SYSCALL(__NR_openat, sys_openat) #define __NR_close 57 __SYSCALL(__NR_close, sys_close) #define __NR_vhangup 58 @@ -187,11 +187,11 @@ __SYSCALL(__NR_vhangup, sys_vhangup) /* fs/pipe.c */ #define __NR_pipe2 59 -__SYSCALL(__NR_pipe2, sys_pipe2) +__SC_WRAP(__NR_pipe2, sys_pipe2) /* fs/quota.c */ #define __NR_quotactl 60 -__SYSCALL(__NR_quotactl, sys_quotactl) +__SC_WRAP(__NR_quotactl, sys_quotactl) /* fs/readdir.c */ #define __NR_getdents64 61 @@ -236,13 +236,13 @@ __SC_COMP(__NR_signalfd4, sys_signalfd4, compat_sys_signalfd4) #define __NR_vmsplice 75 __SC_COMP(__NR_vmsplice, sys_vmsplice, compat_sys_vmsplice) #define __NR_splice 76 -__SYSCALL(__NR_splice, sys_splice) +__SC_WRAP(__NR_splice, sys_splice) #define __NR_tee 77 -__SYSCALL(__NR_tee, sys_tee) +__SC_WRAP(__NR_tee, sys_tee) /* fs/stat.c */ #define __NR_readlinkat 78 -__SYSCALL(__NR_readlinkat, sys_readlinkat) +__SC_WRAP(__NR_readlinkat, sys_readlinkat) #define __NR3264_fstatat 79 __SC_3264(__NR3264_fstatat, sys_fstatat64, sys_newfstatat) #define __NR3264_fstat 80 @@ -281,13 +281,13 @@ __SC_COMP(__NR_utimensat, sys_utimensat, compat_sys_utimensat) /* kernel/acct.c */ #define __NR_acct 89 -__SYSCALL(__NR_acct, sys_acct) +__SC_WRAP(__NR_acct, sys_acct) /* kernel/capability.c */ #define __NR_capget 90 -__SYSCALL(__NR_capget, sys_capget) +__SC_WRAP(__NR_capget, sys_capget) #define __NR_capset 91 -__SYSCALL(__NR_capset, sys_capset) +__SC_WRAP(__NR_capset, sys_capset) /* kernel/exec_domain.c */ #define __NR_personality 92 @@ -303,9 +303,9 @@ __SC_COMP(__NR_waitid, sys_waitid, compat_sys_waitid) /* kernel/fork.c */ #define __NR_set_tid_address 96 -__SYSCALL(__NR_set_tid_address, sys_set_tid_address) +__SC_WRAP(__NR_set_tid_address, sys_set_tid_address) #define __NR_unshare 97 -__SYSCALL(__NR_unshare, sys_unshare) +__SC_WRAP(__NR_unshare, sys_unshare) /* kernel/futex.c */ #define __NR_futex 98 @@ -333,9 +333,9 @@ __SC_COMP(__NR_kexec_load, sys_kexec_load, compat_sys_kexec_load) /* kernel/module.c */ #define __NR_init_module 105 -__SYSCALL(__NR_init_module, sys_init_module) +__SC_WRAP(__NR_init_module, sys_init_module) #define __NR_delete_module 106 -__SYSCALL(__NR_delete_module, sys_delete_module) +__SC_WRAP(__NR_delete_module, sys_delete_module) /* kernel/posix-timers.c */ #define __NR_timer_create 107 @@ -360,7 +360,7 @@ __SC_COMP(__NR_clock_nanosleep, sys_clock_nanosleep, \ /* kernel/printk.c */ #define __NR_syslog 116 -__SYSCALL(__NR_syslog, sys_syslog) +__SC_WRAP(__NR_syslog, sys_syslog) /* kernel/ptrace.c */ #define __NR_ptrace 117 @@ -368,13 +368,13 @@ __SYSCALL(__NR_ptrace, sys_ptrace) /* kernel/sched/core.c */ #define __NR_sched_setparam 118 -__SYSCALL(__NR_sched_setparam, sys_sched_setparam) +__SC_WRAP(__NR_sched_setparam, sys_sched_setparam) #define __NR_sched_setscheduler 119 -__SYSCALL(__NR_sched_setscheduler, sys_sched_setscheduler) +__SC_WRAP(__NR_sched_setscheduler, sys_sched_setscheduler) #define __NR_sched_getscheduler 120 __SYSCALL(__NR_sched_getscheduler, sys_sched_getscheduler) #define __NR_sched_getparam 121 -__SYSCALL(__NR_sched_getparam, sys_sched_getparam) +__SC_WRAP(__NR_sched_getparam, sys_sched_getparam) #define __NR_sched_setaffinity 122 __SC_COMP(__NR_sched_setaffinity, sys_sched_setaffinity, \ compat_sys_sched_setaffinity) @@ -425,7 +425,7 @@ __SYSCALL(__NR_setpriority, sys_setpriority) #define __NR_getpriority 141 __SYSCALL(__NR_getpriority, sys_getpriority) #define __NR_reboot 142 -__SYSCALL(__NR_reboot, sys_reboot) +__SC_WRAP(__NR_reboot, sys_reboot) #define __NR_setregid 143 __SYSCALL(__NR_setregid, sys_setregid) #define __NR_setgid 144 @@ -437,11 +437,11 @@ __SYSCALL(__NR_setuid, sys_setuid) #define __NR_setresuid 147 __SYSCALL(__NR_setresuid, sys_setresuid) #define __NR_getresuid 148 -__SYSCALL(__NR_getresuid, sys_getresuid) +__SC_WRAP(__NR_getresuid, sys_getresuid) #define __NR_setresgid 149 __SYSCALL(__NR_setresgid, sys_setresgid) #define __NR_getresgid 150 -__SYSCALL(__NR_getresgid, sys_getresgid) +__SC_WRAP(__NR_getresgid, sys_getresgid) #define __NR_setfsuid 151 __SYSCALL(__NR_setfsuid, sys_setfsuid) #define __NR_setfsgid 152 @@ -457,15 +457,15 @@ __SYSCALL(__NR_getsid, sys_getsid) #define __NR_setsid 157 __SYSCALL(__NR_setsid, sys_setsid) #define __NR_getgroups 158 -__SYSCALL(__NR_getgroups, sys_getgroups) +__SC_WRAP(__NR_getgroups, sys_getgroups) #define __NR_setgroups 159 -__SYSCALL(__NR_setgroups, sys_setgroups) +__SC_WRAP(__NR_setgroups, sys_setgroups) #define __NR_uname 160 -__SYSCALL(__NR_uname, sys_newuname) +__SC_WRAP(__NR_uname, sys_newuname) #define __NR_sethostname 161 -__SYSCALL(__NR_sethostname, sys_sethostname) +__SC_WRAP(__NR_sethostname, sys_sethostname) #define __NR_setdomainname 162 -__SYSCALL(__NR_setdomainname, sys_setdomainname) +__SC_WRAP(__NR_setdomainname, sys_setdomainname) #define __NR_getrlimit 163 __SC_COMP(__NR_getrlimit, sys_getrlimit, compat_sys_getrlimit) #define __NR_setrlimit 164 @@ -475,9 +475,9 @@ __SC_COMP(__NR_getrusage, sys_getrusage, compat_sys_getrusage) #define __NR_umask 166 __SYSCALL(__NR_umask, sys_umask) #define __NR_prctl 167 -__SYSCALL(__NR_prctl, sys_prctl) +__SC_WRAP(__NR_prctl, sys_prctl) #define __NR_getcpu 168 -__SYSCALL(__NR_getcpu, sys_getcpu) +__SC_WRAP(__NR_getcpu, sys_getcpu) /* kernel/time.c */ #define __NR_gettimeofday 169 @@ -509,7 +509,7 @@ __SC_COMP(__NR_sysinfo, sys_sysinfo, compat_sys_sysinfo) #define __NR_mq_open 180 __SC_COMP(__NR_mq_open, sys_mq_open, compat_sys_mq_open) #define __NR_mq_unlink 181 -__SYSCALL(__NR_mq_unlink, sys_mq_unlink) +__SC_WRAP(__NR_mq_unlink, sys_mq_unlink) #define __NR_mq_timedsend 182 __SC_COMP(__NR_mq_timedsend, sys_mq_timedsend, compat_sys_mq_timedsend) #define __NR_mq_timedreceive 183 @@ -554,21 +554,21 @@ __SYSCALL(__NR_shmdt, sys_shmdt) #define __NR_socket 198 __SYSCALL(__NR_socket, sys_socket) #define __NR_socketpair 199 -__SYSCALL(__NR_socketpair, sys_socketpair) +__SC_WRAP(__NR_socketpair, sys_socketpair) #define __NR_bind 200 -__SYSCALL(__NR_bind, sys_bind) +__SC_WRAP(__NR_bind, sys_bind) #define __NR_listen 201 __SYSCALL(__NR_listen, sys_listen) #define __NR_accept 202 __SYSCALL(__NR_accept, sys_accept) #define __NR_connect 203 -__SYSCALL(__NR_connect, sys_connect) +__SC_WRAP(__NR_connect, sys_connect) #define __NR_getsockname 204 -__SYSCALL(__NR_getsockname, sys_getsockname) +__SC_WRAP(__NR_getsockname, sys_getsockname) #define __NR_getpeername 205 -__SYSCALL(__NR_getpeername, sys_getpeername) +__SC_WRAP(__NR_getpeername, sys_getpeername) #define __NR_sendto 206 -__SYSCALL(__NR_sendto, sys_sendto) +__SC_WRAP(__NR_sendto, sys_sendto) #define __NR_recvfrom 207 __SC_COMP(__NR_recvfrom, sys_recvfrom, compat_sys_recvfrom) #define __NR_setsockopt 208 @@ -588,23 +588,23 @@ __SC_COMP(__NR_readahead, sys_readahead, compat_sys_readahead) /* mm/nommu.c, also with MMU */ #define __NR_brk 214 -__SYSCALL(__NR_brk, sys_brk) +__SC_WRAP(__NR_brk, sys_brk) #define __NR_munmap 215 -__SYSCALL(__NR_munmap, sys_munmap) +__SC_WRAP(__NR_munmap, sys_munmap) #define __NR_mremap 216 -__SYSCALL(__NR_mremap, sys_mremap) +__SC_WRAP(__NR_mremap, sys_mremap) /* security/keys/keyctl.c */ #define __NR_add_key 217 -__SYSCALL(__NR_add_key, sys_add_key) +__SC_WRAP(__NR_add_key, sys_add_key) #define __NR_request_key 218 -__SYSCALL(__NR_request_key, sys_request_key) +__SC_WRAP(__NR_request_key, sys_request_key) #define __NR_keyctl 219 __SC_COMP(__NR_keyctl, sys_keyctl, compat_sys_keyctl) /* arch/example/kernel/sys_example.c */ #define __NR_clone 220 -__SYSCALL(__NR_clone, sys_clone) +__SC_WRAP(__NR_clone, sys_clone) #define __NR_execve 221 __SC_COMP(__NR_execve, sys_execve, compat_sys_execve) @@ -617,27 +617,27 @@ __SC_COMP(__NR3264_fadvise64, sys_fadvise64_64, compat_sys_fadvise64_64) /* mm/, CONFIG_MMU only */ #ifndef __ARCH_NOMMU #define __NR_swapon 224 -__SYSCALL(__NR_swapon, sys_swapon) +__SC_WRAP(__NR_swapon, sys_swapon) #define __NR_swapoff 225 -__SYSCALL(__NR_swapoff, sys_swapoff) +__SC_WRAP(__NR_swapoff, sys_swapoff) #define __NR_mprotect 226 -__SYSCALL(__NR_mprotect, sys_mprotect) +__SC_WRAP(__NR_mprotect, sys_mprotect) #define __NR_msync 227 -__SYSCALL(__NR_msync, sys_msync) +__SC_WRAP(__NR_msync, sys_msync) #define __NR_mlock 228 -__SYSCALL(__NR_mlock, sys_mlock) +__SC_WRAP(__NR_mlock, sys_mlock) #define __NR_munlock 229 -__SYSCALL(__NR_munlock, sys_munlock) +__SC_WRAP(__NR_munlock, sys_munlock) #define __NR_mlockall 230 __SYSCALL(__NR_mlockall, sys_mlockall) #define __NR_munlockall 231 __SYSCALL(__NR_munlockall, sys_munlockall) #define __NR_mincore 232 -__SYSCALL(__NR_mincore, sys_mincore) +__SC_WRAP(__NR_mincore, sys_mincore) #define __NR_madvise 233 -__SYSCALL(__NR_madvise, sys_madvise) +__SC_WRAP(__NR_madvise, sys_madvise) #define __NR_remap_file_pages 234 -__SYSCALL(__NR_remap_file_pages, sys_remap_file_pages) +__SC_WRAP(__NR_remap_file_pages, sys_remap_file_pages) #define __NR_mbind 235 __SC_COMP(__NR_mbind, sys_mbind, compat_sys_mbind) #define __NR_get_mempolicy 236 @@ -654,9 +654,9 @@ __SC_COMP(__NR_move_pages, sys_move_pages, compat_sys_move_pages) __SC_COMP(__NR_rt_tgsigqueueinfo, sys_rt_tgsigqueueinfo, \ compat_sys_rt_tgsigqueueinfo) #define __NR_perf_event_open 241 -__SYSCALL(__NR_perf_event_open, sys_perf_event_open) +__SC_WRAP(__NR_perf_event_open, sys_perf_event_open) #define __NR_accept4 242 -__SYSCALL(__NR_accept4, sys_accept4) +__SC_WRAP(__NR_accept4, sys_accept4) #define __NR_recvmmsg 243 __SC_COMP(__NR_recvmmsg, sys_recvmmsg, compat_sys_recvmmsg) @@ -669,16 +669,15 @@ __SC_COMP(__NR_recvmmsg, sys_recvmmsg, compat_sys_recvmmsg) #define __NR_wait4 260 __SC_COMP(__NR_wait4, sys_wait4, compat_sys_wait4) #define __NR_prlimit64 261 -__SYSCALL(__NR_prlimit64, sys_prlimit64) +__SC_WRAP(__NR_prlimit64, sys_prlimit64) #define __NR_fanotify_init 262 __SYSCALL(__NR_fanotify_init, sys_fanotify_init) #define __NR_fanotify_mark 263 __SYSCALL(__NR_fanotify_mark, sys_fanotify_mark) #define __NR_name_to_handle_at 264 -__SYSCALL(__NR_name_to_handle_at, sys_name_to_handle_at) +__SC_WRAP(__NR_name_to_handle_at, sys_name_to_handle_at) #define __NR_open_by_handle_at 265 -__SC_COMP(__NR_open_by_handle_at, sys_open_by_handle_at, \ - compat_sys_open_by_handle_at) +__SYSCALL(__NR_open_by_handle_at, sys_open_by_handle_at) #define __NR_clock_adjtime 266 __SC_COMP(__NR_clock_adjtime, sys_clock_adjtime, compat_sys_clock_adjtime) #define __NR_syncfs 267 @@ -694,23 +693,23 @@ __SC_COMP(__NR_process_vm_readv, sys_process_vm_readv, \ __SC_COMP(__NR_process_vm_writev, sys_process_vm_writev, \ compat_sys_process_vm_writev) #define __NR_kcmp 272 -__SYSCALL(__NR_kcmp, sys_kcmp) +__SC_WRAP(__NR_kcmp, sys_kcmp) #define __NR_finit_module 273 -__SYSCALL(__NR_finit_module, sys_finit_module) +__SC_WRAP(__NR_finit_module, sys_finit_module) #define __NR_sched_setattr 274 -__SYSCALL(__NR_sched_setattr, sys_sched_setattr) +__SC_WRAP(__NR_sched_setattr, sys_sched_setattr) #define __NR_sched_getattr 275 -__SYSCALL(__NR_sched_getattr, sys_sched_getattr) +__SC_WRAP(__NR_sched_getattr, sys_sched_getattr) #define __NR_renameat2 276 -__SYSCALL(__NR_renameat2, sys_renameat2) +__SC_WRAP(__NR_renameat2, sys_renameat2) #define __NR_seccomp 277 -__SYSCALL(__NR_seccomp, sys_seccomp) +__SC_WRAP(__NR_seccomp, sys_seccomp) #define __NR_getrandom 278 -__SYSCALL(__NR_getrandom, sys_getrandom) +__SC_WRAP(__NR_getrandom, sys_getrandom) #define __NR_memfd_create 279 -__SYSCALL(__NR_memfd_create, sys_memfd_create) +__SC_WRAP(__NR_memfd_create, sys_memfd_create) #define __NR_bpf 280 -__SYSCALL(__NR_bpf, sys_bpf) +__SC_WRAP(__NR_bpf, sys_bpf) #define __NR_execveat 281 __SC_COMP(__NR_execveat, sys_execveat, compat_sys_execveat) #define __NR_userfaultfd 282 @@ -718,9 +717,9 @@ __SYSCALL(__NR_userfaultfd, sys_userfaultfd) #define __NR_membarrier 283 __SYSCALL(__NR_membarrier, sys_membarrier) #define __NR_mlock2 284 -__SYSCALL(__NR_mlock2, sys_mlock2) +__SC_WRAP(__NR_mlock2, sys_mlock2) #define __NR_copy_file_range 285 -__SYSCALL(__NR_copy_file_range, sys_copy_file_range) +__SC_WRAP(__NR_copy_file_range, sys_copy_file_range) #define __NR_preadv2 286 __SC_COMP(__NR_preadv2, sys_preadv2, compat_sys_preadv2) #define __NR_pwritev2 287 @@ -741,29 +740,29 @@ __SC_COMP(__NR_pwritev2, sys_pwritev2, compat_sys_pwritev2) #define __NR_open 1024 __SYSCALL(__NR_open, sys_open) #define __NR_link 1025 -__SYSCALL(__NR_link, sys_link) +__SC_WRAP(__NR_link, sys_link) #define __NR_unlink 1026 -__SYSCALL(__NR_unlink, sys_unlink) +__SC_WRAP(__NR_unlink, sys_unlink) #define __NR_mknod 1027 -__SYSCALL(__NR_mknod, sys_mknod) +__SC_WRAP(__NR_mknod, sys_mknod) #define __NR_chmod 1028 -__SYSCALL(__NR_chmod, sys_chmod) +__SC_WRAP(__NR_chmod, sys_chmod) #define __NR_chown 1029 -__SYSCALL(__NR_chown, sys_chown) +__SC_WRAP(__NR_chown, sys_chown) #define __NR_mkdir 1030 -__SYSCALL(__NR_mkdir, sys_mkdir) +__SC_WRAP(__NR_mkdir, sys_mkdir) #define __NR_rmdir 1031 -__SYSCALL(__NR_rmdir, sys_rmdir) +__SC_WRAP(__NR_rmdir, sys_rmdir) #define __NR_lchown 1032 -__SYSCALL(__NR_lchown, sys_lchown) +__SC_WRAP(__NR_lchown, sys_lchown) #define __NR_access 1033 -__SYSCALL(__NR_access, sys_access) +__SC_WRAP(__NR_access, sys_access) #define __NR_rename 1034 -__SYSCALL(__NR_rename, sys_rename) +__SC_WRAP(__NR_rename, sys_rename) #define __NR_readlink 1035 -__SYSCALL(__NR_readlink, sys_readlink) +__SC_WRAP(__NR_readlink, sys_readlink) #define __NR_symlink 1036 -__SYSCALL(__NR_symlink, sys_symlink) +__SC_WRAP(__NR_symlink, sys_symlink) #define __NR_utimes 1037 __SYSCALL(__NR_utimes, sys_utimes) #define __NR3264_stat 1038 @@ -777,7 +776,7 @@ __SC_3264(__NR3264_lstat, sys_lstat64, sys_newlstat) #ifdef __ARCH_WANT_SYSCALL_NO_FLAGS #define __NR_pipe 1040 -__SYSCALL(__NR_pipe, sys_pipe) +__SC_WRAP(__NR_pipe, sys_pipe) #define __NR_dup2 1041 __SYSCALL(__NR_dup2, sys_dup2) #define __NR_epoll_create 1042 @@ -847,7 +846,7 @@ __SYSCALL(__NR_time, sys_time) __SYSCALL(__NR_utime, sys_utime) #define __NR_creat 1064 -__SYSCALL(__NR_creat, sys_creat) +__SC_WRAP(__NR_creat, sys_creat) #define __NR_getdents 1065 #define __ARCH_WANT_SYS_GETDENTS __SYSCALL(__NR_getdents, sys_getdents) @@ -857,9 +856,9 @@ __SYSCALL(__NR_futimesat, sys_futimesat) #define __ARCH_WANT_SYS_SELECT __SYSCALL(__NR_select, sys_select) #define __NR_poll 1068 -__SYSCALL(__NR_poll, sys_poll) +__SC_WRAP(__NR_poll, sys_poll) #define __NR_epoll_wait 1069 -__SYSCALL(__NR_epoll_wait, sys_epoll_wait) +__SC_WRAP(__NR_epoll_wait, sys_epoll_wait) #define __NR_ustat 1070 __SYSCALL(__NR_ustat, sys_ustat) #define __NR_vfork 1071 @@ -871,12 +870,12 @@ __SYSCALL(__NR_recv, sys_recv) #define __NR_send 1074 __SYSCALL(__NR_send, sys_send) #define __NR_bdflush 1075 -__SYSCALL(__NR_bdflush, sys_bdflush) +__SC_WRAP(__NR_bdflush, sys_bdflush) #define __NR_umount 1076 -__SYSCALL(__NR_umount, sys_oldumount) +__SC_WRAP(__NR_umount, sys_oldumount) #define __ARCH_WANT_SYS_OLDUMOUNT #define __NR_uselib 1077 -__SYSCALL(__NR_uselib, sys_uselib) +__SC_WRAP(__NR_uselib, sys_uselib) #define __NR__sysctl 1078 __SYSCALL(__NR__sysctl, sys_sysctl)