Open sungrasslin opened 1 month ago
When you built otel-profiling-agent
, what was number of instructions reported for the eBPF programs?
Output from my machine
Instruction counts for tracer.ebpf.x86:
.text has 0 instructions
perf_event/unwind_dotnet has 3597 instructions
perf_event/unwind_hotspot has 3073 instructions
tracepoint/sched/sched_switch has 1159 instructions
tracepoint/syscalls/sys_enter_read has 22 instructions
perf_event/unwind_stop has 445 instructions
perf_event/native_tracer_entry has 426 instructions
perf_event/unwind_native has 3995 instructions
perf_event/unwind_perl has 2646 instructions
perf_event/unwind_php has 2563 instructions
perf_event/unwind_python has 3739 instructions
perf_event/unwind_ruby has 3255 instructions
tracepoint/sched/sched_process_exit has 111 instructions
tracepoint/syscalls/sys_enter_bpf has 25 instructions
raw_tracepoint/sys_enter has 29 instructions
perf_event/unwind_v8 has 3317 instructions
Total instructions: 28402
The max number of instructions per program is 4096 for kernel 4.19, and the native unwinder is very close to this. If you used a different compiler version, maybe the limit of instructions was reached?
I tried to run it, but the program reported an error. I tested on openEuler(4.19.90)
if i change to "-bpf-log-level=2 -bpf-log-size=8388608“, got this error: