setgroups on metag
get/set list of supplementary group IDs
sys_setgroups(int gidsetsize, gid_t *grouplist)
| number | 159 (0x9f) |
|---|---|
| abi | common |
| entry point | sys_setgroups |
| since | Linux 3.9 or earlier (3.9 is the first release scanned for metag) |
| man page | setgroups(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
D1Re0 | 159, the syscall number |
D1Ar1 | int gidsetsize |
D0Ar2 | gid_t *grouplist |
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 116
- x86 81
- arm64 159
- arm 81
- riscv64 159
- ia32 81
- x32 1073741940
- loongarch64 159
- ppc64 81
- ppc 81
- s390x 206
- mips64 5114
- mipsn32 6114
- mipso32 4081
- alpha 80
- arc 159
- blackfin 81, removed in 4.17
- cris 81, removed in 4.17
- csky 159
- frv 81, removed in 4.17
- hexagon 159
- ia64 1078, removed in 6.7
- m68k 81
- microblaze 81
- mn10300 81, removed in 4.17
- nds32 159, removed in 5.18
- nios2 159
- openrisc 159
- parisc 81
- score 159, removed in 4.17
- sh 81
- sparc 80
- sparc64 80
- tilegx 159, removed in 4.17
- tilepro 159, removed in 4.17
- xtensa 197
Get this as JSON: https://api.syscall.sh/v2/syscalls/metag/setgroups?kernel=all