recvmmsg on tilepro
receive multiple messages on a socket
sys_recvmmsg(int fd, struct mmsghdr *mmsg, unsigned int vlen, unsigned int flags, struct timespec *timeout)
| number | 243 (0xf3) |
|---|---|
| abi | common |
| entry point | sys_recvmmsg |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | recvmmsg(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 243, the syscall number |
r0 | int fd |
r1 | struct mmsghdr *mmsg |
r2 | unsigned int vlen |
r3 | unsigned int flags |
r4 | struct timespec *timeout |
r0 | the return value |
Then run swint1 to enter the kernel.
The kernel uses r1 to signal an error for ordinary calls.
Fast atomic calls use negative numbers and have different register behavior.
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 299
- x86 337
- arm64 243
- arm 365
- riscv64 243
- ia32 337
- x32 1073742361
- loongarch64 243
- ppc64 343
- ppc 343
- s390x 357
- mips64 5294
- mipsn32 6298
- mipso32 4335
- alpha 479
- arc 243
- blackfin 370, removed in 4.17
- cris 340, removed in 4.17
- csky 243
- hexagon 243
- ia64 1322, removed in 6.7
- m68k 371
- metag 243, removed in 4.17
- microblaze 367
- mn10300 338, removed in 4.17
- nds32 243, removed in 5.18
- nios2 243
- openrisc 243
- parisc 319
- score 243, removed in 4.17
- sh 357
- sparc 328
- sparc64 328
- tilegx 243, removed in 4.17
- xtensa 307
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/recvmmsg?kernel=all