-
Notifications
You must be signed in to change notification settings - Fork 4k
Open
Description
Hello, I tried running runqlat in my arm-32bit embedded environment to debug scheduling latency issues. After cross compiling, I encountered the following error - ENOTSUPP. Is it due to a low kernel version that is not supported, or is it a compatibility support issue on arm-32bit? How to further investigate and locate the problem, thank you!
- kernel: linux-5.4.61 (BTF spported)
- chang: CLANG-18 -bpf ARM
- cross-compiler: arm-linux-gnueabihf-7.3.1
libbpf: sched_wakeup is not found in vmlinux BTF
libbpf: prog 'handle_sched_switch': BPF program load failed: -ENOTSUPP
libbpf: prog 'handle_sched_switch': -- BEGIN PROG LOAD LOG --
; int BPF_PROG(handle_sched_switch, bool preempt, struct task_struct *prev, struct task_struct *next)
0: (79) r2 = *(u64 *)(r1 +16)
1: (79) r1 = *(u64 *)(r1 +8)
; return handle_switch(preempt, prev, next);
2: (85) call pc+2
caller:
R10=fp0
callee:
frame1: R1_w=invP(id=0) R2_w=invP(id=0) R10=fp0
; static int handle_switch(bool preempt, struct task_struct *prev, struct task_struct *next)
5: (bf) r6 = r2
6: (bf) r7 = r1
; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
7: (18) r1 = 0xc5210b90
9: (71) r1 = *(u8 *)(r1 +0)
frame1: R1_w=map_value(id=0,off=0,ks=4,vs=12,imm=0) R2_w=invP(id=0) R6_w=invP(id=0) R7_w=invP(id=0) R10=fp0
; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
10: (15) if r1 == 0x0 goto pc+5
frame1: R1_w=invP(id=0,umax_value=255,var_off=(0x0; 0xff)) R2_w=invP(id=0) R6_w=invP(id=0) R7_w=invP(id=0) R10=fp0
....
from 10 to 16: frame1: R1_w=invP0 R2_w=invP(id=0) R6_w=invP(id=0) R7_w=invP(id=0) R10=fp0
; if (filter_cg && !bpf_current_task_under_cgroup(&cgroup_map, 0))
16: (b7) r1 = 0
; if (bpf_core_field_exists(t->__state))
17: (15) if r1 == 0x0 goto pc+10
; if (get_task_state(prev) == TASK_RUNNING)
28: (b7) r1 = 0
29: (bf) r3 = r7
30: (0f) r3 += r1
31: (bf) r1 = r10
; return BPF_CORE_READ((struct task_struct___o *)task, state);
32: (07) r1 += -16
33: (b7) r2 = 8
34: (85) call bpf_probe_read#4
35: safe
processed 735 insns (limit 1000000) max_states_per_insn 4 total_states 49 peak_states 45 mark_read 6
-- END PROG LOAD LOG --
libbpf: prog 'handle_sched_switch': failed to load: -ENOTSUPP
libbpf: failed to load object 'runqlat_bpf'
libbpf: failed to load BPF skeleton 'runqlat_bpf': -ENOTSUPP
failed to load BPF object: -524
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels