syscall.sh / sh / perf_event_open

perf_event_open

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)
number336 (0x150)
abicommon
entry pointsys_perf_event_open
sinceLinux 5.0
man pageperf_event_open(2)
sourceelixir.bootlin.com

Registers

registervalue
r3336, the syscall number
r4struct perf_event_attr *attr_uptr
r5pid_t pid
r6int cpu
r7int group_fd
r0unsigned long flags
r0the return value

Then run trapa #31 to enter the kernel.

Same syscall on other architectures

Get this as JSON: https://api.syscall.sh/v2/syscalls/sh/perf_event_open