Closed brb closed 7 months ago
@lmb suggested that https://elixir.bootlin.com/linux/v6.6/source/kernel/trace/trace_kprobe.c#L884 might be the case. Indeed, we are using symbols instead of addrs - https://github.com/cilium/pwru/blob/v1.0.4/main.go#L314.
This is the new behavior introduced in 6.6 - https://lore.kernel.org/all/20231020104250.9537-1-flaniel@linux.microsoft.com/.
For now you could skip attaching if EADDRNOTAVAIL is generated and log a warning or something like that?
if EADDRNOTAVAIL is generated and log a warning or something like that
Yep, but we try to attach the same kprobe to multiple functions in a single go. We would need to figure out which function name is causing us troubles. I think we need to switch to addrs instead of syms.
I patched my vm and now I'm facing the same issue:
./pwru
2023/12/20 09:49:21 Attaching kprobes (via kprobe)...
712 / 2208 [------------------------>__________________________________________________] 32.25% ? p/s2023/12/20 09:49:21 Opening kprobe esp_input_restore_header: creating perf_kprobe PMU (arch-specific fallback for "esp_input_restore_header"): token esp_input_restore_header: opening perf event: cannot assign requested address
ubuntu# uname -a
Linux ubuntu 6.5.13-orbstack-00116-gb64875927ef8 #1 SMP Wed Dec 6 22:19:46 UTC 2023 aarch64 aarch64 aarch64 GNU/Linux
I applied https://github.com/cilium/pwru/pull/297/commits so that I can continue on the json output PR.
@darox We have released v1.0.5 which should have the tmp fix for the loading problem.
I just rebased and it works. Thx!
From https://github.com/cilium/pwru/actions/runs/6719026297/job/18259892769?pr=283