mprotect on tilepro
set protection on a region of memory
sys_mprotect(unsigned long start, size_t len, unsigned long prot)
| number | 226 (0xe2) |
|---|---|
| abi | common |
| entry point | sys_mprotect |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | mprotect(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 226, the syscall number |
r0 | unsigned long start |
r1 | size_t len |
r2 | unsigned long prot |
r0 | the 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
- x64 10
- x86 125
- arm64 226
- arm 125
- riscv64 226
- ia32 125
- x32 1073741834
- loongarch64 226
- ppc64 125
- ppc 125
- s390x 125
- mips64 5010
- mipsn32 6010
- mipso32 4125
- alpha 74
- arc 226
- blackfin 125, removed in 4.17
- cris 125, removed in 4.17
- csky 226
- frv 125, removed in 4.17
- hexagon 226
- ia64 1155, removed in 6.7
- m32r 125, removed in 4.17
- m68k 125
- metag 226, removed in 4.17
- microblaze 125
- mn10300 125, removed in 4.17
- nds32 226, removed in 5.18
- nios2 226
- openrisc 226
- parisc 125
- score 226, removed in 4.17
- sh 125
- sparc 74
- sparc64 74
- tilegx 226, removed in 4.17
- xtensa 82
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/mprotect?kernel=all