process_vm_readv on ia32

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)
number347 (0x15b)
abii386
entry pointsys_process_vm_readv
sinceLinux 3.3 or earlier (3.3 is the first release scanned for ia32)
man pageprocess_vm_readv(2)
sourceelixir.bootlin.com

Registers

registervalue
eax347, the syscall number
ebxpid_t pid
ecxconst struct iovec *lvec
edxunsigned long liovcnt
esiconst struct iovec *rvec
ediunsigned long riovcnt
ebpunsigned long flags
eaxthe return value

Then run int 0x80 to enter the kernel.

This compat ABI is only available when the kernel is built with CONFIG_IA32_EMULATION.

Same syscall on other architectures

Get this as JSON: https://api.syscall.sh/v2/syscalls/ia32/process_vm_readv