vmsplice on tilepro

splice user pages to/from a pipe

sys_vmsplice(int fd, const struct iovec *iov, unsigned long nr_segs, unsigned int flags)
number75 (0x4b)
abicommon
entry pointsys_vmsplice
sinceLinux 3.7 or earlier (3.7 is the first release scanned for tilepro)
man pagevmsplice(2)
sourceelixir.bootlin.com

Registers

registervalue
r1075, the syscall number
r0int fd
r1const struct iovec *iov
r2unsigned long nr_segs
r3unsigned int 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/vmsplice?kernel=all