syscall.sh / arm64 / getcpu
getcpu
determine CPU and NUMA node on which the calling thread is running
sys_getcpu(unsigned *cpup, unsigned *nodep, void *unused)
| number | 168 (0xa8) |
|---|---|
| abi | common |
| entry point | sys_getcpu |
| since | Linux 3.7 |
| man page | getcpu(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
x8 | 168, the syscall number |
x0 | unsigned *cpup |
x1 | unsigned *nodep |
x2 | void *unused |
x0 | the return value |
Then run svc #0 to enter the kernel.
Same syscall on other architectures
- x64 309
- x86 318
- arm 345
- riscv64 168
- x32 1073742133
- loongarch64 168
- ppc64 302
- ppc 302
- s390x 311
- mips64 5271
- mipsn32 6275
- mipso32 4312
- alpha 473
- arc 168
- csky 168
- hexagon 168
- m68k 314
- microblaze 318
- nios2 168
- openrisc 168
- parisc 296
- sh 318
- sparc 308
- sparc64 308
- xtensa 280
Get this as JSON: https://api.syscall.sh/v2/syscalls/arm64/getcpu