clock_nanosleep on metag

high-resolution sleep with specifiable clock

sys_clock_nanosleep(clockid_t which_clock, int flags, const struct timespec *rqtp, struct timespec *rmtp)
number115 (0x73)
abicommon
entry pointsys_clock_nanosleep
sinceLinux 3.9 or earlier (3.9 is the first release scanned for metag)
man pageclock_nanosleep(2)
sourceelixir.bootlin.com

Registers

registervalue
D1Re0115, the syscall number
D1Ar1clockid_t which_clock
D0Ar2int flags
D1Ar3const struct timespec *rqtp
D0Ar4struct timespec *rmtp
D0Re0the return value

Then run SWITCH #0x440001 to enter the kernel.

Values wider than one register are packed into consecutive arguments.

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/metag/clock_nanosleep?kernel=all