-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
Trying to run it on kernel 6.14.2 but got libbpf error:
$ sudo /home/ianic/.opam/default/bin/uring-trace
libbpf: prog 'handle_task_work_run': BPF program load failed: Invalid argument
libbpf: prog 'handle_task_work_run': -- BEGIN PROG LOAD LOG --
0: R1=ctx() R10=fp0
; int handle_task_work_run(struct trace_event_raw_io_uring_task_work_run *ctx) { @ uring.bpf.c:286
0: (bf) r6 = r1 ; R1=ctx() R6_w=ctx()
; value = bpf_map_lookup_elem(&globals, idx); @ uring.bpf.c:35
1: (18) r1 = 0xffff959c9b9b3400 ; R1_w=map_ptr(map=globals,ks=4,vs=8)
3: (18) r2 = 0xffffb3e44c4cc004 ; R2_w=map_value(map=uring_tr.rodata,ks=4,vs=58,off=4)
5: (85) call bpf_map_lookup_elem#1 ; R0_w=map_value_or_null(id=1,map=globals,ks=4,vs=8)
; if (value == NULL) { @ uring.bpf.c:36
6: (55) if r0 != 0x0 goto pc+5 ; R0_w=0
; bpf_printk("Error got NULL"); @ uring.bpf.c:37
7: (18) r1 = 0xffffb3e44c4cc01c ; R1_w=map_value(map=uring_tr.rodata,ks=4,vs=58,off=28)
9: (b4) w2 = 15 ; R2_w=15
10: (85) call bpf_trace_printk#6 ; R0=scalar()
; return; @ uring.bpf.c:38
11: (05) goto pc+10
; value = bpf_map_lookup_elem(&globals, idx); @ uring.bpf.c:35
22: (18) r1 = 0xffff959c9b9b3400 ; R1_w=map_ptr(map=globals,ks=4,vs=8)
24: (18) r2 = 0xffffb3e44c4cc018 ; R2_w=map_value(map=uring_tr.rodata,ks=4,vs=58,off=24)
26: (85) call bpf_map_lookup_elem#1 ; R0_w=map_value_or_null(id=2,map=globals,ks=4,vs=8)
; if (value == NULL) { @ uring.bpf.c:36
27: (55) if r0 != 0x0 goto pc+5 ; R0_w=0
; bpf_printk("Error got NULL"); @ uring.bpf.c:37
28: (18) r1 = 0xffffb3e44c4cc01c ; R1_w=map_value(map=uring_tr.rodata,ks=4,vs=58,off=28)
30: (b4) w2 = 15 ; R2_w=15
31: (85) call bpf_trace_printk#6 ; R0=scalar()
; return; @ uring.bpf.c:38
32: (05) goto pc+10
; e = bpf_ringbuf_reserve(&rb, sizeof(*e), 0); @ uring.bpf.c:71
43: (18) r1 = 0xffff959c88394100 ; R1_w=map_ptr(map=rb,ks=0,vs=0)
45: (b7) r2 = 264 ; R2_w=264
46: (b7) r3 = 0 ; R3_w=0
47: (85) call bpf_ringbuf_reserve#131 ; R0_w=ringbuf_mem_or_null(id=4,ref_obj_id=4,sz=264) refs=4
48: (bf) r7 = r0 ; R0_w=ringbuf_mem_or_null(id=4,ref_obj_id=4,sz=264) R7_w=ringbuf_mem_or_null(id=4,ref_obj_id=4,sz=264) refs=4
; if (!e) { @ uring.bpf.c:72
49: (55) if r7 != 0x0 goto pc+11 61: R0_w=ringbuf_mem(ref_obj_id=4,sz=264) R6=ctx() R7_w=ringbuf_mem(ref_obj_id=4,sz=264) R10=fp0 refs=4
; id = bpf_get_current_pid_tgid(); @ uring.bpf.c:76
61: (85) call bpf_get_current_pid_tgid#14 ; R0_w=scalar() refs=4
62: (b4) w1 = 7 ; R1_w=7 refs=4
; e->ty = ty; @ uring.bpf.c:77
63: (63) *(u32 *)(r7 +0) = r1 ; R1_w=7 R7_w=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
; e->tid = id; @ uring.bpf.c:79
64: (63) *(u32 *)(r7 +8) = r0 ; R0_w=scalar() R7_w=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
; e->pid = id >> 32; @ uring.bpf.c:78
65: (77) r0 >>= 32 ; R0_w=scalar(smin=0,smax=umax=0xffffffff,var_off=(0x0; 0xffffffff)) refs=4
66: (63) *(u32 *)(r7 +4) = r0 ; R0_w=scalar(smin=0,smax=umax=0xffffffff,var_off=(0x0; 0xffffffff)) R7_w=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
; e->ts = bpf_ktime_get_ns(); @ uring.bpf.c:80
67: (85) call bpf_ktime_get_ns#5 ; R0=scalar() refs=4
68: (7b) *(u64 *)(r7 +16) = r0 ; R0=scalar() R7=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
; bpf_get_current_comm(&e->comm, sizeof(e->comm)); @ uring.bpf.c:81
69: (bf) r1 = r7 ; R1_w=ringbuf_mem(ref_obj_id=4,sz=264) R7=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
70: (07) r1 += 24 ; R1_w=ringbuf_mem(ref_obj_id=4,off=24,sz=264) refs=4
71: (b4) w2 = 16 ; R2_w=16 refs=4
72: (85) call bpf_get_current_comm#16 ; R0_w=scalar() refs=4
; extra->tctx = ctx->tctx; @ uring.bpf.c:296
73: (79) r1 = *(u64 *)(r6 +8) ; R1_w=scalar() R6=ctx() refs=4
74: (7b) *(u64 *)(r7 +40) = r1 ; R1_w=scalar() R7=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
; extra->count = ctx->count; @ uring.bpf.c:297
75: (61) r1 = *(u32 *)(r6 +16) ; R1_w=scalar(smin=0,smax=umax=0xffffffff,var_off=(0x0; 0xffffffff)) R6=ctx() refs=4
76: (63) *(u32 *)(r7 +48) = r1 ; R1_w=scalar(smin=0,smax=umax=0xffffffff,var_off=(0x0; 0xffffffff)) R7=ringbuf_mem(ref_obj_id=4,sz=264) refs=4
; extra->loops = ctx->loops; @ uring.bpf.c:298
77: <invalid CO-RE relocation>
failed to resolve CO-RE relocation <byte_off> [63] struct trace_event_raw_io_uring_task_work_run.loops (0:3 @ offset 20)
processed 60 insns (limit 1000000) max_states_per_insn 0 total_states 5 peak_states 5 mark_read 3
-- END PROG LOAD LOG --
libbpf: prog 'handle_task_work_run': failed to load: -22
libbpf: failed to load object '/home/ianic/.opam/default/share/uring-trace/bpf/uring-trace.bpf.o'
uring-trace: internal error, uncaught exception:
Failure("Could not load bpf_object, got exit -22")
$ uname -a
Linux 6.14.2-061402-generic x86_64 x86_64 x86_64 GNU/Linux
$ opam info libbpf
<><> libbpf: information on all versions ><><><><><><><><><><><><><><><><><><><>
name libbpf
all-installed-versions 0.1.0 [default]
all-versions 0.1.0Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels