syscall.sh / arm / 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 | 377 (0x179) |
|---|---|
| abi | common |
| entry point | sys_process_vm_writev |
| since | Linux 4.10 |
| man page | process_vm_writev(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r7 | 377, the syscall number |
r0 | pid_t pid |
r1 | const struct iovec *lvec |
r2 | unsigned long liovcnt |
r3 | const struct iovec *rvec |
r4 | unsigned long riovcnt |
r5 | unsigned long flags |
r0 | the return value |
Then run svc #0 to enter the kernel.
Same syscall on other architectures
- x64 311
- x86 348
- arm64 271
- riscv64 271
- x32 1073742364
- 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/arm/process_vm_writev