syscall.sh / x32 / process_vm_writev
process_vm_writev
transfer data between process address spaces
sys_process_vm_writev(pid_t pid, const struct iovec *lvec, unsigned long liovcnt, const struct iovec *rvec, unsigned long riovcnt, unsigned long flags)
| number | 1073742364 (0x4000021c) |
|---|---|
| abi | x32 |
| entry point | sys_process_vm_writev |
| since | Linux 3.4 |
| man page | process_vm_writev(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
rax | 1073742364, the syscall number |
rdi | pid_t pid |
rsi | const struct iovec *lvec |
rdx | unsigned long liovcnt |
r10 | const struct iovec *rvec |
r8 | unsigned long riovcnt |
r9 | unsigned long flags |
rax | the return value |
Then run syscall to enter the kernel.
Same syscall on other architectures
- x64 311
- x86 348
- arm64 271
- arm 377
- riscv64 271
- loongarch64 271
- ppc64 352
- ppc 352
- s390x 341
- mips64 5305
- mipsn32 6310
- mipso32 4346
- alpha 505
- arc 271
- csky 271
- hexagon 271
- m68k 346
- microblaze 378
- nios2 271
- openrisc 271
- parisc 331
- sh 366
- sparc 339
- sparc64 339
- xtensa 323
Get this as JSON: https://api.syscall.sh/v2/syscalls/x32/process_vm_writev