clock_nanosleep on tilepro
high-resolution sleep with specifiable clock
sys_clock_nanosleep(clockid_t which_clock, int flags, const struct timespec *rqtp, struct timespec *rmtp)
| number | 115 (0x73) |
|---|---|
| abi | common |
| entry point | sys_clock_nanosleep |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | clock_nanosleep(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 115, the syscall number |
r0 | clockid_t which_clock |
r1 | int flags |
r2 | const struct timespec *rqtp |
r3 | struct timespec *rmtp |
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 230
- x86 267
- arm64 115
- arm 265
- riscv64 115
- ia32 267
- x32 1073742054
- loongarch64 115
- ppc64 248
- ppc 248
- s390x 262
- mips64 5224
- mipsn32 6228
- mipso32 4265
- alpha 422
- arc 115
- blackfin 268, removed in 4.17
- cris 267, removed in 4.17
- csky 115
- frv 267, removed in 4.17
- hexagon 115
- ia64 1256, removed in 6.7
- m32r 267, removed in 4.17
- m68k 262
- metag 115, removed in 4.17
- microblaze 267
- mn10300 267, removed in 4.17
- nds32 115, removed in 5.18
- nios2 115
- openrisc 115
- parisc 258
- score 115, removed in 4.17
- sh 267
- sparc 259
- sparc64 259
- tilegx 115, removed in 4.17
- xtensa 247
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/clock_nanosleep?kernel=all