retis-org / retis

Tracing packets in the Linux networking stack & friends
https://retis.readthedocs.io/en/stable/
100 stars 14 forks source link

retis collect doesn't survive pause+resume #397

Closed igsilya closed 5 months ago

igsilya commented 5 months ago
# retis collect
Collector(s) started: skb-tracking, ct, ovs, skb-drop, skb
^Z
[1]+  Stopped                 retis collect
[root@rhel9 ovs]# fg
retis collect
WARN  libbpf: prog 'probe_kprobe': BPF program load failed: Invalid argument
WARN  libbpf: prog 'probe_kprobe': -- BEGIN PROG LOAD LOG --
fd 20 is not pointing to valid bpf_map
processed 0 insns (limit 1000000) max_states_per_insn 0 total_states 0 peak_states 0 mark_read 0
-- END PROG LOAD LOG --
WARN  libbpf: prog 'probe_kprobe': failed to load: -22
WARN  libbpf: failed to load object 'kprobe_bpf'
Error: Invalid argument (os error 22)
# 
# echo $?
1
igsilya commented 5 months ago

Pausing after the probes are loaded also breaks the collection:

# retis collect
Collector(s) started: skb, ovs, ct, skb-tracking, skb-drop
9 probe(s) loaded

4581660017249 (21) [swapper/21] 0 [tp] skb:kfree_skb #42ac037c261ffff99edd6a99400 (skb ffff99ee009f5000) drop (reason UNHANDLED_PROTO)
  if 2 (eth0) rxif 2

4583643942053 (21) [swapper/21] 0 [tp] skb:kfree_skb #42b36780ca5ffff99edd6a99c00 (skb ffff99ee009f4e00) drop (reason UNHANDLED_PROTO)
  if 2 (eth0) rxif 2
^Z
[1]+  Stopped                 retis collect
# fg
retis collect
Error: channel is empty and sending half is closed