syscall.sh / arm64 / kexec_load
kexec_load
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 |
| entry point | sys_kexec_load |
| since | Linux 3.7 |
| man page | kexec_load(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
x8 | 104, the syscall number |
x0 | unsigned long entry |
x1 | unsigned long nr_segments |
x2 | struct kexec_segment *segments |
x3 | unsigned long flags |
x0 | the return value |
Then run svc #0 to enter the kernel.
Same syscall on other architectures
- x64 246
- x86 283
- arm 347
- riscv64 104
- x32 1073742352
- loongarch64 104
- ppc64 268
- ppc 268
- s390x 277
- mips64 5270
- mipsn32 6274
- mipso32 4311
- alpha 448
- arc 104
- csky 104
- hexagon 104
- m68k 313
- microblaze 283
- nios2 104
- openrisc 104
- parisc 300
- sh 283
- sparc 306
- sparc64 306
Get this as JSON: https://api.syscall.sh/v2/syscalls/arm64/kexec_load