Пытаюсь разработать модуль, который проверяет время между вызовами syscalls у процесса, и если он завис (не вызывал syscall какое то время), то прибивает его и запускает заново.
Но нам нужно именно запускать его не из под root.
Что сделано уже:
- Выдал capabilites:
setcap "cap_sys_nice,cap_sys_admin,cap_sys_resource,cap_perfmon,cap_sys_resource,cap_bpf=ep" /bin/my_cool_prog
- Поднастроил ядро:
sudo sysctl kernel.unprivileged_bpf_disabled=0
sudo sysctl kernel.perf_event_paranoid=-1
И всё равно ничего не помогает, модуль просто не грузится:
libbpf: prog 'trace_sys_enter': failed to create tracepoint 'raw_syscalls/sys_enter' perf event: Permission denied
