process_vm_readv on metag

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.9 or earlier (3.9 is the first release scanned for metag)
man pageprocess_vm_readv(2)
sourceelixir.bootlin.com

Registers

registervalue
D1Re0270, the syscall number
D1Ar1pid_t pid
D0Ar2const struct iovec *lvec
D1Ar3unsigned long liovcnt
D0Ar4const struct iovec *rvec
D1Ar5unsigned long riovcnt
D0Ar6unsigned long flags
D0Re0the return value

Then run SWITCH #0x440001 to enter the kernel.

Values wider than one register are packed into consecutive arguments.

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/metag/process_vm_readv?kernel=all