syscall.sh / parisc / clone
clone
create a child process
sys_clone(unsigned long clone_flags, unsigned long newsp, int *parent_tidptr, unsigned long tls, int *child_tidptr)
| number | 120 (0x78) |
|---|---|
| abi | common |
| entry point | sys_clone |
| since | Linux 5.0 |
| man page | clone(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r20 | 120, the syscall number |
r26 | unsigned long clone_flags |
r25 | unsigned long newsp |
r24 | int *parent_tidptr |
r23 | unsigned long tls |
r22 | int *child_tidptr |
r28 | the return value |
Then run ble 0x100(%sr2, %r0) to enter the kernel.
Same syscall on other architectures
- x64 56
- x86 120
- arm64 220
- arm 120
- riscv64 220
- x32 1073741880
- loongarch64 220
- ppc64 120
- ppc 120
- s390x 120
- mips64 5055
- mipsn32 6055
- mipso32 4120
- alpha 312
- arc 220
- csky 220
- hexagon 220
- m68k 120
- microblaze 120
- nios2 220
- openrisc 220
- sh 120
- sparc 217
- sparc64 217
- xtensa 116
Get this as JSON: https://api.syscall.sh/v2/syscalls/parisc/clone