socketpair on tilepro
create a pair of connected sockets
sys_socketpair(int family, int type, int protocol, int *usockvec)
| number | 199 (0xc7) |
|---|---|
| abi | common |
| entry point | sys_socketpair |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | socketpair(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 199, the syscall number |
r0 | int family |
r1 | int type |
r2 | int protocol |
r3 | int *usockvec |
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 53
- x86 360
- arm64 199
- arm 288
- riscv64 199
- ia32 360
- x32 1073741877
- loongarch64 199
- ppc64 333
- ppc 333
- s390x 360
- mips64 5052
- mipsn32 6052
- mipso32 4184
- alpha 135
- arc 199
- blackfin 330, removed in 4.17
- csky 199
- hexagon 199
- ia64 1197, removed in 6.7
- m68k 357
- metag 199, removed in 4.17
- microblaze 346
- nds32 199, removed in 5.18
- nios2 199
- openrisc 199
- parisc 56
- score 199, removed in 4.17
- sh 347
- sparc 135
- sparc64 135
- tilegx 199, removed in 4.17
- xtensa 112
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/socketpair?kernel=all