getcwd on metag
get current working directory
sys_getcwd(char *buf, unsigned long size)
| number | 17 (0x11) |
|---|---|
| abi | common |
| entry point | sys_getcwd |
| since | Linux 3.9 or earlier (3.9 is the first release scanned for metag) |
| man page | getcwd(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
D1Re0 | 17, the syscall number |
D1Ar1 | char *buf |
D0Ar2 | unsigned long size |
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 79
- x86 183
- arm64 17
- arm 183
- riscv64 17
- ia32 183
- x32 1073741903
- loongarch64 17
- ppc64 182
- ppc 182
- s390x 183
- mips64 5077
- mipsn32 6077
- mipso32 4203
- alpha 367
- arc 17
- blackfin 183, removed in 4.17
- cris 183, removed in 4.17
- csky 17
- frv 183, removed in 4.17
- hexagon 17
- ia64 1184, removed in 6.7
- m32r 183, removed in 4.17
- m68k 183
- microblaze 183
- mn10300 183, removed in 4.17
- nds32 17, removed in 5.18
- nios2 17
- openrisc 17
- parisc 110
- score 17, removed in 4.17
- sh 183
- sparc 119
- sparc64 119
- tilegx 17, removed in 4.17
- tilepro 17, removed in 4.17
- xtensa 43
Get this as JSON: https://api.syscall.sh/v2/syscalls/metag/getcwd?kernel=all