root/kernel/sys_ni.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. sys_ni_syscall

   1 // SPDX-License-Identifier: GPL-2.0
   2 
   3 #include <linux/linkage.h>
   4 #include <linux/errno.h>
   5 
   6 #include <asm/unistd.h>
   7 
   8 #ifdef CONFIG_ARCH_HAS_SYSCALL_WRAPPER
   9 /* Architectures may override COND_SYSCALL and COND_SYSCALL_COMPAT */
  10 #include <asm/syscall_wrapper.h>
  11 #endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */
  12 
  13 /*  we can't #include <linux/syscalls.h> here,
  14     but tell gcc to not warn with -Wmissing-prototypes  */
  15 asmlinkage long sys_ni_syscall(void);
  16 
  17 /*
  18  * Non-implemented system calls get redirected here.
  19  */
  20 asmlinkage long sys_ni_syscall(void)
  21 {
  22         return -ENOSYS;
  23 }
  24 
  25 #ifndef COND_SYSCALL
  26 #define COND_SYSCALL(name) cond_syscall(sys_##name)
  27 #endif /* COND_SYSCALL */
  28 
  29 #ifndef COND_SYSCALL_COMPAT
  30 #define COND_SYSCALL_COMPAT(name) cond_syscall(compat_sys_##name)
  31 #endif /* COND_SYSCALL_COMPAT */
  32 
  33 /*
  34  * This list is kept in the same order as include/uapi/asm-generic/unistd.h.
  35  * Architecture specific entries go below, followed by deprecated or obsolete
  36  * system calls.
  37  */
  38 
  39 COND_SYSCALL(io_setup);
  40 COND_SYSCALL_COMPAT(io_setup);
  41 COND_SYSCALL(io_destroy);
  42 COND_SYSCALL(io_submit);
  43 COND_SYSCALL_COMPAT(io_submit);
  44 COND_SYSCALL(io_cancel);
  45 COND_SYSCALL(io_getevents_time32);
  46 COND_SYSCALL(io_getevents);
  47 COND_SYSCALL(io_pgetevents_time32);
  48 COND_SYSCALL(io_pgetevents);
  49 COND_SYSCALL_COMPAT(io_pgetevents_time32);
  50 COND_SYSCALL_COMPAT(io_pgetevents);
  51 COND_SYSCALL(io_uring_setup);
  52 COND_SYSCALL(io_uring_enter);
  53 COND_SYSCALL(io_uring_register);
  54 
  55 /* fs/xattr.c */
  56 
  57 /* fs/dcache.c */
  58 
  59 /* fs/cookies.c */
  60 COND_SYSCALL(lookup_dcookie);
  61 COND_SYSCALL_COMPAT(lookup_dcookie);
  62 
  63 /* fs/eventfd.c */
  64 COND_SYSCALL(eventfd2);
  65 
  66 /* fs/eventfd.c */
  67 COND_SYSCALL(epoll_create1);
  68 COND_SYSCALL(epoll_ctl);
  69 COND_SYSCALL(epoll_pwait);
  70 COND_SYSCALL_COMPAT(epoll_pwait);
  71 
  72 /* fs/fcntl.c */
  73 
  74 /* fs/inotify_user.c */
  75 COND_SYSCALL(inotify_init1);
  76 COND_SYSCALL(inotify_add_watch);
  77 COND_SYSCALL(inotify_rm_watch);
  78 
  79 /* fs/ioctl.c */
  80 
  81 /* fs/ioprio.c */
  82 COND_SYSCALL(ioprio_set);
  83 COND_SYSCALL(ioprio_get);
  84 
  85 /* fs/locks.c */
  86 COND_SYSCALL(flock);
  87 
  88 /* fs/namei.c */
  89 
  90 /* fs/namespace.c */
  91 
  92 /* fs/nfsctl.c */
  93 
  94 /* fs/open.c */
  95 
  96 /* fs/pipe.c */
  97 
  98 /* fs/quota.c */
  99 COND_SYSCALL(quotactl);
 100 
 101 /* fs/readdir.c */
 102 
 103 /* fs/read_write.c */
 104 
 105 /* fs/sendfile.c */
 106 
 107 /* fs/select.c */
 108 
 109 /* fs/signalfd.c */
 110 COND_SYSCALL(signalfd4);
 111 COND_SYSCALL_COMPAT(signalfd4);
 112 
 113 /* fs/splice.c */
 114 
 115 /* fs/stat.c */
 116 
 117 /* fs/sync.c */
 118 
 119 /* fs/timerfd.c */
 120 COND_SYSCALL(timerfd_create);
 121 COND_SYSCALL(timerfd_settime);
 122 COND_SYSCALL(timerfd_settime32);
 123 COND_SYSCALL(timerfd_gettime);
 124 COND_SYSCALL(timerfd_gettime32);
 125 
 126 /* fs/utimes.c */
 127 
 128 /* kernel/acct.c */
 129 COND_SYSCALL(acct);
 130 
 131 /* kernel/capability.c */
 132 COND_SYSCALL(capget);
 133 COND_SYSCALL(capset);
 134 
 135 /* kernel/exec_domain.c */
 136 
 137 /* kernel/exit.c */
 138 
 139 /* kernel/fork.c */
 140 /* __ARCH_WANT_SYS_CLONE3 */
 141 COND_SYSCALL(clone3);
 142 
 143 /* kernel/futex.c */
 144 COND_SYSCALL(futex);
 145 COND_SYSCALL(futex_time32);
 146 COND_SYSCALL(set_robust_list);
 147 COND_SYSCALL_COMPAT(set_robust_list);
 148 COND_SYSCALL(get_robust_list);
 149 COND_SYSCALL_COMPAT(get_robust_list);
 150 
 151 /* kernel/hrtimer.c */
 152 
 153 /* kernel/itimer.c */
 154 
 155 /* kernel/kexec.c */
 156 COND_SYSCALL(kexec_load);
 157 COND_SYSCALL_COMPAT(kexec_load);
 158 
 159 /* kernel/module.c */
 160 COND_SYSCALL(init_module);
 161 COND_SYSCALL(delete_module);
 162 
 163 /* kernel/posix-timers.c */
 164 
 165 /* kernel/printk.c */
 166 COND_SYSCALL(syslog);
 167 
 168 /* kernel/ptrace.c */
 169 
 170 /* kernel/sched/core.c */
 171 
 172 /* kernel/sys.c */
 173 COND_SYSCALL(setregid);
 174 COND_SYSCALL(setgid);
 175 COND_SYSCALL(setreuid);
 176 COND_SYSCALL(setuid);
 177 COND_SYSCALL(setresuid);
 178 COND_SYSCALL(getresuid);
 179 COND_SYSCALL(setresgid);
 180 COND_SYSCALL(getresgid);
 181 COND_SYSCALL(setfsuid);
 182 COND_SYSCALL(setfsgid);
 183 COND_SYSCALL(setgroups);
 184 COND_SYSCALL(getgroups);
 185 
 186 /* kernel/time.c */
 187 
 188 /* kernel/timer.c */
 189 
 190 /* ipc/mqueue.c */
 191 COND_SYSCALL(mq_open);
 192 COND_SYSCALL_COMPAT(mq_open);
 193 COND_SYSCALL(mq_unlink);
 194 COND_SYSCALL(mq_timedsend);
 195 COND_SYSCALL(mq_timedsend_time32);
 196 COND_SYSCALL(mq_timedreceive);
 197 COND_SYSCALL(mq_timedreceive_time32);
 198 COND_SYSCALL(mq_notify);
 199 COND_SYSCALL_COMPAT(mq_notify);
 200 COND_SYSCALL(mq_getsetattr);
 201 COND_SYSCALL_COMPAT(mq_getsetattr);
 202 
 203 /* ipc/msg.c */
 204 COND_SYSCALL(msgget);
 205 COND_SYSCALL(old_msgctl);
 206 COND_SYSCALL(msgctl);
 207 COND_SYSCALL_COMPAT(msgctl);
 208 COND_SYSCALL_COMPAT(old_msgctl);
 209 COND_SYSCALL(msgrcv);
 210 COND_SYSCALL_COMPAT(msgrcv);
 211 COND_SYSCALL(msgsnd);
 212 COND_SYSCALL_COMPAT(msgsnd);
 213 
 214 /* ipc/sem.c */
 215 COND_SYSCALL(semget);
 216 COND_SYSCALL(old_semctl);
 217 COND_SYSCALL(semctl);
 218 COND_SYSCALL_COMPAT(semctl);
 219 COND_SYSCALL_COMPAT(old_semctl);
 220 COND_SYSCALL(semtimedop);
 221 COND_SYSCALL(semtimedop_time32);
 222 COND_SYSCALL(semop);
 223 
 224 /* ipc/shm.c */
 225 COND_SYSCALL(shmget);
 226 COND_SYSCALL(old_shmctl);
 227 COND_SYSCALL(shmctl);
 228 COND_SYSCALL_COMPAT(shmctl);
 229 COND_SYSCALL_COMPAT(old_shmctl);
 230 COND_SYSCALL(shmat);
 231 COND_SYSCALL_COMPAT(shmat);
 232 COND_SYSCALL(shmdt);
 233 
 234 /* net/socket.c */
 235 COND_SYSCALL(socket);
 236 COND_SYSCALL(socketpair);
 237 COND_SYSCALL(bind);
 238 COND_SYSCALL(listen);
 239 COND_SYSCALL(accept);
 240 COND_SYSCALL(connect);
 241 COND_SYSCALL(getsockname);
 242 COND_SYSCALL(getpeername);
 243 COND_SYSCALL(setsockopt);
 244 COND_SYSCALL_COMPAT(setsockopt);
 245 COND_SYSCALL(getsockopt);
 246 COND_SYSCALL_COMPAT(getsockopt);
 247 COND_SYSCALL(sendto);
 248 COND_SYSCALL(shutdown);
 249 COND_SYSCALL(recvfrom);
 250 COND_SYSCALL_COMPAT(recvfrom);
 251 COND_SYSCALL(sendmsg);
 252 COND_SYSCALL_COMPAT(sendmsg);
 253 COND_SYSCALL(recvmsg);
 254 COND_SYSCALL_COMPAT(recvmsg);
 255 
 256 /* mm/filemap.c */
 257 
 258 /* mm/nommu.c, also with MMU */
 259 COND_SYSCALL(mremap);
 260 
 261 /* security/keys/keyctl.c */
 262 COND_SYSCALL(add_key);
 263 COND_SYSCALL(request_key);
 264 COND_SYSCALL(keyctl);
 265 COND_SYSCALL_COMPAT(keyctl);
 266 
 267 /* arch/example/kernel/sys_example.c */
 268 
 269 /* mm/fadvise.c */
 270 COND_SYSCALL(fadvise64_64);
 271 
 272 /* mm/, CONFIG_MMU only */
 273 COND_SYSCALL(swapon);
 274 COND_SYSCALL(swapoff);
 275 COND_SYSCALL(mprotect);
 276 COND_SYSCALL(msync);
 277 COND_SYSCALL(mlock);
 278 COND_SYSCALL(munlock);
 279 COND_SYSCALL(mlockall);
 280 COND_SYSCALL(munlockall);
 281 COND_SYSCALL(mincore);
 282 COND_SYSCALL(madvise);
 283 COND_SYSCALL(remap_file_pages);
 284 COND_SYSCALL(mbind);
 285 COND_SYSCALL_COMPAT(mbind);
 286 COND_SYSCALL(get_mempolicy);
 287 COND_SYSCALL_COMPAT(get_mempolicy);
 288 COND_SYSCALL(set_mempolicy);
 289 COND_SYSCALL_COMPAT(set_mempolicy);
 290 COND_SYSCALL(migrate_pages);
 291 COND_SYSCALL_COMPAT(migrate_pages);
 292 COND_SYSCALL(move_pages);
 293 COND_SYSCALL_COMPAT(move_pages);
 294 
 295 COND_SYSCALL(perf_event_open);
 296 COND_SYSCALL(accept4);
 297 COND_SYSCALL(recvmmsg);
 298 COND_SYSCALL(recvmmsg_time32);
 299 COND_SYSCALL_COMPAT(recvmmsg_time32);
 300 COND_SYSCALL_COMPAT(recvmmsg_time64);
 301 
 302 /*
 303  * Architecture specific syscalls: see further below
 304  */
 305 
 306 /* fanotify */
 307 COND_SYSCALL(fanotify_init);
 308 COND_SYSCALL(fanotify_mark);
 309 
 310 /* open by handle */
 311 COND_SYSCALL(name_to_handle_at);
 312 COND_SYSCALL(open_by_handle_at);
 313 COND_SYSCALL_COMPAT(open_by_handle_at);
 314 
 315 COND_SYSCALL(sendmmsg);
 316 COND_SYSCALL_COMPAT(sendmmsg);
 317 COND_SYSCALL(process_vm_readv);
 318 COND_SYSCALL_COMPAT(process_vm_readv);
 319 COND_SYSCALL(process_vm_writev);
 320 COND_SYSCALL_COMPAT(process_vm_writev);
 321 
 322 /* compare kernel pointers */
 323 COND_SYSCALL(kcmp);
 324 
 325 COND_SYSCALL(finit_module);
 326 
 327 /* operate on Secure Computing state */
 328 COND_SYSCALL(seccomp);
 329 
 330 COND_SYSCALL(memfd_create);
 331 
 332 /* access BPF programs and maps */
 333 COND_SYSCALL(bpf);
 334 
 335 /* execveat */
 336 COND_SYSCALL(execveat);
 337 
 338 COND_SYSCALL(userfaultfd);
 339 
 340 /* membarrier */
 341 COND_SYSCALL(membarrier);
 342 
 343 COND_SYSCALL(mlock2);
 344 
 345 COND_SYSCALL(copy_file_range);
 346 
 347 /* memory protection keys */
 348 COND_SYSCALL(pkey_mprotect);
 349 COND_SYSCALL(pkey_alloc);
 350 COND_SYSCALL(pkey_free);
 351 
 352 
 353 /*
 354  * Architecture specific weak syscall entries.
 355  */
 356 
 357 /* pciconfig: alpha, arm, arm64, ia64, sparc */
 358 COND_SYSCALL(pciconfig_read);
 359 COND_SYSCALL(pciconfig_write);
 360 COND_SYSCALL(pciconfig_iobase);
 361 
 362 /* sys_socketcall: arm, mips, x86, ... */
 363 COND_SYSCALL(socketcall);
 364 COND_SYSCALL_COMPAT(socketcall);
 365 
 366 /* compat syscalls for arm64, x86, ... */
 367 COND_SYSCALL_COMPAT(sysctl);
 368 COND_SYSCALL_COMPAT(fanotify_mark);
 369 
 370 /* x86 */
 371 COND_SYSCALL(vm86old);
 372 COND_SYSCALL(modify_ldt);
 373 COND_SYSCALL_COMPAT(quotactl32);
 374 COND_SYSCALL(vm86);
 375 COND_SYSCALL(kexec_file_load);
 376 
 377 /* s390 */
 378 COND_SYSCALL(s390_pci_mmio_read);
 379 COND_SYSCALL(s390_pci_mmio_write);
 380 COND_SYSCALL(s390_ipc);
 381 COND_SYSCALL_COMPAT(s390_ipc);
 382 
 383 /* powerpc */
 384 COND_SYSCALL(rtas);
 385 COND_SYSCALL(spu_run);
 386 COND_SYSCALL(spu_create);
 387 COND_SYSCALL(subpage_prot);
 388 
 389 
 390 /*
 391  * Deprecated system calls which are still defined in
 392  * include/uapi/asm-generic/unistd.h and wanted by >= 1 arch
 393  */
 394 
 395 /* __ARCH_WANT_SYSCALL_NO_FLAGS */
 396 COND_SYSCALL(epoll_create);
 397 COND_SYSCALL(inotify_init);
 398 COND_SYSCALL(eventfd);
 399 COND_SYSCALL(signalfd);
 400 COND_SYSCALL_COMPAT(signalfd);
 401 
 402 /* __ARCH_WANT_SYSCALL_OFF_T */
 403 COND_SYSCALL(fadvise64);
 404 
 405 /* __ARCH_WANT_SYSCALL_DEPRECATED */
 406 COND_SYSCALL(epoll_wait);
 407 COND_SYSCALL(recv);
 408 COND_SYSCALL_COMPAT(recv);
 409 COND_SYSCALL(send);
 410 COND_SYSCALL(bdflush);
 411 COND_SYSCALL(uselib);
 412 
 413 
 414 /*
 415  * The syscalls below are not found in include/uapi/asm-generic/unistd.h
 416  */
 417 
 418 /* obsolete: SGETMASK_SYSCALL */
 419 COND_SYSCALL(sgetmask);
 420 COND_SYSCALL(ssetmask);
 421 
 422 /* obsolete: SYSFS_SYSCALL */
 423 COND_SYSCALL(sysfs);
 424 
 425 /* obsolete: __ARCH_WANT_SYS_IPC */
 426 COND_SYSCALL(ipc);
 427 COND_SYSCALL_COMPAT(ipc);
 428 
 429 /* obsolete: UID16 */
 430 COND_SYSCALL(chown16);
 431 COND_SYSCALL(fchown16);
 432 COND_SYSCALL(getegid16);
 433 COND_SYSCALL(geteuid16);
 434 COND_SYSCALL(getgid16);
 435 COND_SYSCALL(getgroups16);
 436 COND_SYSCALL(getresgid16);
 437 COND_SYSCALL(getresuid16);
 438 COND_SYSCALL(getuid16);
 439 COND_SYSCALL(lchown16);
 440 COND_SYSCALL(setfsgid16);
 441 COND_SYSCALL(setfsuid16);
 442 COND_SYSCALL(setgid16);
 443 COND_SYSCALL(setgroups16);
 444 COND_SYSCALL(setregid16);
 445 COND_SYSCALL(setresgid16);
 446 COND_SYSCALL(setresuid16);
 447 COND_SYSCALL(setreuid16);
 448 COND_SYSCALL(setuid16);
 449 
 450 /* restartable sequence */
 451 COND_SYSCALL(rseq);

/* [<][>][^][v][top][bottom][index][help] */