write on score
write to a file descriptor
sys_write(unsigned int fd, const char *buf, size_t count)
| number | 64 (0x40) |
|---|---|
| abi | common |
| entry point | sys_write |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for score) |
| man page | write(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r27 | 64, the syscall number |
r4 | unsigned int fd |
r5 | const char *buf |
r6 | size_t count |
r4 | the return value |
Then run syscall to enter the kernel.
r7 is the error flag and r4 then holds the positive error number.
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 1
- x86 4
- arm64 64
- arm 4
- riscv64 64
- ia32 4
- x32 1073741825
- loongarch64 64
- ppc64 4
- ppc 4
- s390x 4
- mips64 5001
- mipsn32 6001
- mipso32 4004
- alpha 4
- arc 64
- blackfin 4, removed in 4.17
- cris 4, removed in 4.17
- csky 64
- frv 4, removed in 4.17
- hexagon 64
- ia64 1027, removed in 6.7
- m32r 4, removed in 4.17
- m68k 4
- metag 64, removed in 4.17
- microblaze 4
- mn10300 4, removed in 4.17
- nds32 64, removed in 5.18
- nios2 64
- openrisc 64
- parisc 4
- sh 4
- sparc 4
- sparc64 4
- tilegx 64, removed in 4.17
- tilepro 64, removed in 4.17
- xtensa 13
Get this as JSON: https://api.syscall.sh/v2/syscalls/score/write?kernel=all