epoll_ctl on metag
control interface for an epoll file descriptor
sys_epoll_ctl(int epfd, int op, int fd, struct epoll_event *event)
| number | 21 (0x15) |
|---|---|
| abi | common |
| kconfig | CONFIG_EPOLL |
| family | epoll see the whole family on metag |
| entry point | sys_epoll_ctl |
| since | Linux 3.9 or earlier (3.9 is the first release scanned for metag) |
| man page | epoll_ctl(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
D1Re0 | 21, the syscall number |
D1Ar1 | int epfd |
D0Ar2 | int op |
D1Ar3 | int fd |
D0Ar4 | struct epoll_event *event |
D0Re0 | the return value |
Then run SWITCH #0x440001 to enter the kernel.
Values wider than one register are packed into consecutive arguments.
This architecture was removed from the Linux kernel in Linux 4.17. The newest release with a syscall table here is Linux 4.16. The other removed architectures live on the historical architectures page.
Same syscall on other architectures
- x64 233
- x86 255
- arm64 21
- arm 251
- riscv64 21
- ia32 255
- x32 1073742057
- loongarch64 21
- ppc64 237
- ppc 237
- s390x 250
- mips64 5208
- mipsn32 6208
- mipso32 4249
- alpha 408
- arc 21
- blackfin 256, removed in 4.17
- cris 255, removed in 4.17
- csky 21
- frv 255, removed in 4.17
- hexagon 21
- ia64 1244, removed in 6.7
- m32r 255, removed in 4.17
- m68k 250
- microblaze 255
- mn10300 255, removed in 4.17
- nds32 21, removed in 5.18
- nios2 21
- openrisc 21
- parisc 225
- score 21, removed in 4.17
- sh 255
- sparc 194
- sparc64 194
- tilegx 21, removed in 4.17
- tilepro 21, removed in 4.17
- xtensa 19
Get this as JSON: https://api.syscall.sh/v2/syscalls/metag/epoll_ctl?kernel=all