perf_event_open on ia64
set up performance monitoring
sys_perf_event_open(struct perf_event_attr *attr_uptr, pid_t pid, int cpu, int group_fd, unsigned long flags)
| number | 1352 (0x548) |
|---|---|
| abi | common |
| kconfig | CONFIG_PERF_EVENTS |
| entry point | sys_perf_event_open |
| since | Linux 5.1 |
| man page | perf_event_open(2) |
| source | elixir.bootlin.com |
Registers
| register | value |
|---|---|
r15 | 1352, the syscall number |
out0 | struct perf_event_attr *attr_uptr |
out1 | pid_t pid |
out2 | int cpu |
out3 | int group_fd |
out4 | unsigned long flags |
r8 | the return value |
Then run break 0x100000 to enter the kernel.
The kernel uses r10 to signal an error.
The pipe call returns file descriptors in r8 and r9.
This architecture was removed from the Linux kernel in Linux 6.7. The newest release with a syscall table here is Linux 6.6. The other removed architectures live on the historical architectures page.
Same syscall on other architectures
- x64 298
- x86 336
- arm64 241
- arm 364
- riscv64 241
- ia32 336
- x32 1073742122
- loongarch64 241
- ppc64 319
- ppc 319
- s390x 331
- mips64 5292
- mipsn32 6296
- mipso32 4333
- alpha 493
- arc 241
- blackfin 369, removed in 4.17
- cris 339, removed in 4.17
- csky 241
- frv 336, removed in 4.17
- hexagon 241
- m68k 332
- metag 241, removed in 4.17
- microblaze 366
- mn10300 337, removed in 4.17
- nds32 241, removed in 5.18
- nios2 241
- openrisc 241
- parisc 318
- score 241, removed in 4.17
- sh 336
- sparc 327
- sparc64 327
- tilegx 241, removed in 4.17
- tilepro 241, removed in 4.17
- xtensa 327
Get this as JSON: https://api.syscall.sh/v2/syscalls/ia64/perf_event_open?kernel=all