syscall.sh / x64 / splice
splice
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)
| number | 275 (0x113) |
|---|---|
| abi | common |
| entry point | sys_splice |
| since | Linux 3.3 |
| man page | splice(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
rax | 275, the syscall number |
rdi | int fd_in |
rsi | loff_t *off_in |
rdx | int fd_out |
r10 | loff_t *off_out |
r8 | size_t len |
r9 | unsigned int flags |
rax | the return value |
Then run syscall to enter the kernel.
Same syscall on other architectures
- x86 313
- arm64 76
- arm 340
- riscv64 76
- x32 1073742099
- loongarch64 76
- ppc64 283
- ppc 283
- s390x 306
- mips64 5263
- mipsn32 6267
- mipso32 4304
- alpha 468
- arc 76
- csky 76
- hexagon 76
- m68k 306
- microblaze 313
- nios2 76
- openrisc 76
- parisc 291
- sh 313
- sparc 232
- sparc64 232
- xtensa 268
Get this as JSON: https://api.syscall.sh/v2/syscalls/x64/splice