eunomia-bpf / bpftime

Userspace eBPF runtime for fast Uprobe & Syscall hook & Extensions with LLVM JIT
https://eunomia.dev/bpftime/
MIT License
699 stars 70 forks source link

[BUG] The tracer program crashes when the tracer traces syscalls of itself and LLVM JIT is used #194

Closed agentzh closed 3 months ago

agentzh commented 6 months ago

When an ebpf userland program using libbpf traces the syscall of itself (using the tracepoint API), it crashes:

[2024-01-28 11:58:48.784] [info] [syscall_context.hpp:84] manager constructed
: CommandLine Error: Option 'enable-partial-inlining' registered more than once!
LLVM ERROR: inconsistency in registered CommandLine options

The LLVM JIT is used here and both the bpftime agent and syscall-server so files are preloaded.

Officeyutong commented 3 months ago

This is fixed by #286