kcmp on tilepro

compare two processes to determine if they share a kernel resource

sys_kcmp(pid_t pid1, pid_t pid2, int type, unsigned long idx1, unsigned long idx2)
number272 (0x110)
abicommon
kconfigCONFIG_KCMP
entry pointsys_kcmp
sinceLinux 3.7 or earlier (3.7 is the first release scanned for tilepro)
man pagekcmp(2)
sourceelixir.bootlin.com

Registers

registervalue
r10272, the syscall number
r0pid_t pid1
r1pid_t pid2
r2int type
r3unsigned long idx1
r4unsigned long idx2
r0the 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

Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/kcmp?kernel=all