getcpu on metag
determine CPU and NUMA node on which the calling thread is running
sys_getcpu(unsigned *cpup, unsigned *nodep, struct getcpu_cache *unused)
| number | 168 (0xa8) |
|---|---|
| abi | common |
| entry point | sys_getcpu |
| since | Linux 3.9 or earlier (3.9 is the first release scanned for metag) |
| man page | getcpu(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
D1Re0 | 168, the syscall number |
D1Ar1 | unsigned *cpup |
D0Ar2 | unsigned *nodep |
D1Ar3 | struct getcpu_cache *unused |
D0Re0 | the 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
- x64 309
- x86 318
- arm64 168
- arm 345
- riscv64 168
- ia32 318
- x32 1073742133
- loongarch64 168
- ppc64 302
- ppc 302
- s390x 311
- mips64 5271
- mipsn32 6275
- mipso32 4312
- alpha 473
- arc 168
- cris 318, removed in 4.17
- csky 168
- frv 318, removed in 4.17
- hexagon 168
- ia64 1304, removed in 6.7
- m32r 318, removed in 4.17
- m68k 314
- microblaze 318
- mn10300 319, removed in 4.17
- nds32 168, removed in 5.18
- nios2 168
- openrisc 168
- parisc 296
- score 168, removed in 4.17
- sh 318
- sparc 308
- sparc64 308
- tilegx 168, removed in 4.17
- tilepro 168, removed in 4.17
- xtensa 280
Get this as JSON: https://api.syscall.sh/v2/syscalls/metag/getcpu?kernel=all