copy_file_range on tilepro
Copy a range of data from one file to another
sys_copy_file_range(int fd_in, loff_t *off_in, int fd_out, loff_t *off_out, size_t len, unsigned int flags)
| number | 285 (0x11d) |
|---|---|
| abi | common |
| entry point | sys_copy_file_range |
| since | Linux 4.5 |
| man page | copy_file_range(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 285, the syscall number |
r0 | int fd_in |
r1 | loff_t *off_in |
r2 | int fd_out |
r3 | loff_t *off_out |
r4 | size_t len |
r5 | unsigned int flags |
r0 | the 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
- x64 326
- x86 377
- arm64 285
- arm 391
- riscv64 285
- ia32 377
- x32 1073742150
- loongarch64 285
- ppc64 379
- ppc 379
- s390x 375
- mips64 5320
- mipsn32 6324
- mipso32 4360
- alpha 519
- arc 285
- csky 285
- hexagon 285
- ia64 1347, removed in 6.7
- m68k 376
- metag 285, removed in 4.17
- microblaze 392
- nds32 285, removed in 5.18
- nios2 285
- openrisc 285
- parisc 346
- score 285, removed in 4.17
- sh 380
- sparc 357
- sparc64 357
- tilegx 285, removed in 4.17
- xtensa 345
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/copy_file_range?kernel=all