9.4 arch_prctl

int arch_prctl(int code, uint64_t argument);

This syscall interacts with architecture-specific thread-local storage. For x86_64, these are the available codes:

ARCH_SET_FS (1)

Sets argument as the current thread’s FS.

ARCH_GET_FS (2)

Stores the current thread’s FS into the variable pointed to by argument.

ARCH_SET_GS (3)

Sets argument as the current thread’s FS.

ARCH_GET_GS (4)

Stores the current thread’s GS into the variable pointed to by argument.

For riscv64, the architecture makes it so there is no need for this syscall, thus, the syscall does not have valid arguments, and all arguments will return EINVAL.

This syscall returns 0 on success, and -1 on failure. errno is to be set to the following values on failure: