kexec_load on tilepro
load a new kernel for later execution
sys_kexec_load(unsigned long entry, unsigned long nr_segments, struct kexec_segment *segments, unsigned long flags)
| number | 104 (0x68) |
|---|---|
| abi | common |
| kconfig | CONFIG_KEXEC |
| entry point | sys_kexec_load |
| since | Linux 3.7 or earlier (3.7 is the first release scanned for tilepro) |
| man page | kexec_load(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r10 | 104, the syscall number |
r0 | unsigned long entry |
r1 | unsigned long nr_segments |
r2 | struct kexec_segment *segments |
r3 | unsigned long flags |
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 246
- x86 283
- arm64 104
- arm 347
- riscv64 104
- ia32 283
- x32 1073742352
- loongarch64 104
- ppc64 268
- ppc 268
- s390x 277
- mips64 5270
- mipsn32 6274
- mipso32 4311
- alpha 448
- arc 104
- csky 104
- hexagon 104
- ia64 1268, removed in 6.7
- m68k 313
- metag 104, removed in 4.17
- microblaze 283
- mn10300 283, removed in 4.17
- nds32 104, removed in 5.18
- nios2 104
- openrisc 104
- parisc 300
- score 104, removed in 4.17
- sh 283
- sparc 306
- sparc64 306
- tilegx 104, removed in 4.17
Get this as JSON: https://api.syscall.sh/v2/syscalls/tilepro/kexec_load?kernel=all