pwritev on tilepro
read or write data into multiple buffers
sys_pwritev(unsigned long fd, const struct iovec *vec, unsigned long vlen, unsigned long pos_l, unsigned long pos_h)
| number | 70 (0x46) |
|---|---|
| abi | common |
| entry point | sys_pwritev |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | pwritev(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 70, the syscall number |
r0 | unsigned long fd |
r1 | const struct iovec *vec |
r2 | unsigned long vlen |
r3 | unsigned long pos_l |
r4 | unsigned long pos_h |
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 296
- x86 334
- arm64 70
- arm 362
- riscv64 70
- ia32 334
- x32 1073742359
- loongarch64 70
- ppc64 321
- ppc 321
- s390x 329
- mips64 5290
- mipsn32 6294
- mipso32 4331
- alpha 491
- arc 70
- blackfin 367, removed in 4.17
- cris 334, removed in 4.17
- csky 70
- frv 334, removed in 4.17
- hexagon 70
- ia64 1320, removed in 6.7
- m68k 330
- metag 70, removed in 4.17
- microblaze 364
- mn10300 335, removed in 4.17
- nds32 70, removed in 5.18
- nios2 70
- openrisc 70
- parisc 316
- score 70, removed in 4.17
- sh 334
- sparc 325
- sparc64 325
- tilegx 70, removed in 4.17
- xtensa 318
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/pwritev?kernel=all