/* SPDX-License-Identifier: GPL-2.0-only *//* * syscalls.h - Linux syscall interfaces (non-arch-specific) * * Copyright (c) 2004 Randy Dunlap * Copyright (c) 2004 Open Source Development Labs */#ifndef _LINUX_SYSCALLS_H#define _LINUX_SYSCALLS_Hstruct__aio_sigset;structepoll_event;structiattr;structinode;structiocb;structio_event;structiovec;struct__kernel_old_itimerval;structkexec_segment;structlinux_dirent;structlinux_dirent64;structlist_head;structmmap_arg_struct;structmsgbuf;structuser_msghdr;structmmsghdr;structmsqid_ds;structnew_utsname;structnfsctl_arg;struct__old_kernel_stat;structoldold_utsname;structold_utsname;structpollfd;structrlimit;structrlimit64;structrusage;structsched_param;structsched_attr;structsel_arg_struct;structsemaphore;structsembuf;structshmid_ds;structsockaddr;structstat;structstat64;structstatfs;structstatfs64;structstatx;structsysinfo;structtimespec;struct__kernel_old_timeval;struct__kernel_timex;structtimezone;structtms;structutimbuf;structmq_attr;structcompat_stat;structold_timeval32;structrobust_list_head;structfutex_waitv;structold_linux_dirent;structperf_event_attr;structfile_handle;structsigaltstack;structrseq;unionbpf_attr;structio_uring_params;structclone_args;structopen_how;structmount_attr;structlandlock_ruleset_attr;structlsm_ctx;enumlandlock_rule_type;structcachestat_range;structcachestat;structstatmount;structmnt_id_req;structns_id_req;structxattr_args;structfile_attr;#include<linux/types.h>#include<linux/aio_abi.h>#include<linux/capability.h>#include<linux/signal.h>#include<linux/list.h>#include<linux/bug.h>#include<linux/sem.h>#include<asm/siginfo.h>#include<linux/unistd.h>#include<linux/quota.h>#include<linux/key.h>#include<linux/personality.h>#include<trace/syscall.h>#ifdef CONFIG_ARCH_HAS_SYSCALL_WRAPPER/* * It may be useful for an architecture to override the definitions of the * SYSCALL_DEFINE0() and __SYSCALL_DEFINEx() macros, in particular to use a * different calling convention for sysca