process_vm_readv on tilepro

transfer data between process address spaces

sys_process_vm_readv(pid_t pid, const struct iovec *lvec, unsigned long liovcnt, const struct iovec *rvec, unsigned long riovcnt, unsigned long flags)
number270 (0x10e)
abicommon
entry pointsys_process_vm_readv
sinceLinux 3.7 or earlier (3.7 is the first release scanned for tilepro)
man pageprocess_vm_readv(2)
sourceelixir.bootlin.com

Registers

registervalue
r10270, the syscall number
r0pid_t pid
r1const struct iovec *lvec
r2unsigned long liovcnt
r3const struct iovec *rvec
r4unsigned long riovcnt
r5unsigned long flags
r0the 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

Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/process_vm_readv?kernel=all