cilium / tetragon

eBPF-based Security Observability and Runtime Enforcement
https://tetragon.io
Apache License 2.0
3.65k stars 369 forks source link

arm64: `bpf_generic_kprobe_v53.o` fails to load #2137

Open vparla opened 8 months ago

vparla commented 8 months ago

Is there an existing issue for this?

Is your feature request related to a problem?

Support for bpf tail calls on ARM64 and documentation to describe platforms where it is not supported.

Describe the feature you would like

Hi - it appears that some #tetragon capabilities on arm64 do not function as expected. It looks to be related to BPF tail calls. Seems to be addressed in 6.0 version of the kernel. Is this a known limitation today in #tetragon? https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d4609a5d8c70d21b4a3f801cf896a3c16c613fe1

error="sensor gkp-sensor-1 from collection cat-open failed to load: failed prog /var/lib/tetragon/bpf_generic_kprobe_v53.o kern_version 331656 
loadInstance: opening collection '/var/lib/tetragon/bpf_generic_kprobe_v53.o' failed: program generic_kprobe_process_event4: 
load program: invalid argument: tail_calls are not allowed in non-JITed programs with bpf-to-bpf calls (292 line(s) omitted)"

Describe your proposed solution

Document support plans for this and limitations in the current Tetragon solution.

Code of Conduct

mtardy commented 8 months ago

Hello, could you please give us more information on which kernel you tried, with which configuration? We need to reproduce this to gather more information and understand what's happening here.

jrfastab commented 8 months ago

If you have the policy adding it here would help. Its a bug we should fix it for sure.