splice on ia32

splice data to/from a pipe

sys_splice(int fd_in, loff_t *off_in, int fd_out, loff_t *off_out, size_t len, unsigned int flags)
number313 (0x139)
abii386
entry pointsys_splice
sinceLinux 3.3 or earlier (3.3 is the first release scanned for ia32)
man pagesplice(2)
sourceelixir.bootlin.com

Registers

registervalue
eax313, the syscall number
ebxint fd_in
ecxloff_t *off_in
edxint fd_out
esiloff_t *off_out
edisize_t len
ebpunsigned int 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/splice