writev on tilepro
read or write data into multiple buffers
sys_writev(unsigned long fd, const struct iovec *vec, unsigned long vlen)
| number | 66 (0x42) |
|---|---|
| abi | common |
| entry point | sys_writev |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | writev(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 66, the syscall number |
r0 | unsigned long fd |
r1 | const struct iovec *vec |
r2 | unsigned long vlen |
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 20
- x86 146
- arm64 66
- arm 146
- riscv64 66
- ia32 146
- x32 1073742340
- loongarch64 66
- ppc64 146
- ppc 146
- s390x 146
- mips64 5019
- mipsn32 6019
- mipso32 4146
- alpha 121
- arc 66
- blackfin 146, removed in 4.17
- cris 146, removed in 4.17
- csky 66
- frv 146, removed in 4.17
- hexagon 66
- ia64 1147, removed in 6.7
- m32r 146, removed in 4.17
- m68k 146
- metag 66, removed in 4.17
- microblaze 146
- mn10300 146, removed in 4.17
- nds32 66, removed in 5.18
- nios2 66
- openrisc 66
- parisc 146
- score 66, removed in 4.17
- sh 146
- sparc 121
- sparc64 121
- tilegx 66, removed in 4.17
- xtensa 25
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/writev?kernel=all