./strace-static-x86_64 -e \!wait4,clock_nanosleep,nanosleep -s 100 -x -f ./syz-executor4000695560 <...> Warning: Permanently added '10.128.0.10' (ED25519) to the list of known hosts. execve("./syz-executor4000695560", ["./syz-executor4000695560"], 0x7ffdccee0320 /* 10 vars */) = 0 brk(NULL) = 0x5555630d5000 brk(0x5555630d5d00) = 0x5555630d5d00 arch_prctl(ARCH_SET_FS, 0x5555630d5380) = 0 set_tid_address(0x5555630d5650) = 5090 set_robust_list(0x5555630d5660, 24) = 0 rseq(0x5555630d5ca0, 0x20, 0, 0x53053053) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 readlink("/proc/self/exe", "/root/syz-executor4000695560", 4096) = 28 getrandom("\x09\x65\x13\x51\x00\x3e\xa2\x8b", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x5555630d5d00 brk(0x5555630f6d00) = 0x5555630f6d00 brk(0x5555630f7000) = 0x5555630f7000 mprotect(0x7fbb5b27f000, 16384, PROT_READ) = 0 mmap(0x1ffff000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1ffff000 mmap(0x20000000, 16777216, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x20000000 mmap(0x21000000, 4096, PROT_NONE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x21000000 write(1, "executing program\n", 18executing program ) = 18 bpf(BPF_MAP_CREATE, {map_type=BPF_MAP_TYPE_LPM_TRIE, key_size=7, value_size=65537, max_entries=9, map_flags=BPF_F_NO_PREALLOC, inner_map_fd=-1, map_name="", map_ifindex=0, btf_fd=-1, btf_key_type_id=0, btf_value_type_id=0, btf_vmlinux_value_type_id=0, map_extra=0}, 72) = 3 bpf(BPF_PROG_LOAD, {prog_type=BPF_PROG_TYPE_RAW_TRACEPOINT, insn_cnt=13, insns=0x20000280, license="GPL", log_level=0, log_size=0, log_buf=NULL, kern_version=KERNEL_VERSION(0, 0, 0), prog_flags=0, prog_name="", prog_ifindex=0, expected_attach_type=BPF_CGROUP_INET_INGRESS, prog_btf_fd=-1, func_info_rec_size=0, func_info=NULL, func_info_cnt=0, line_info_rec_size=0, line_info=NULL, line_info_cnt=0, attach_btf_id=0, attach_prog_fd=0, fd_array=NULL}, 144) = 4 bpf(BPF_RAW_TRACEPOINT_OPEN, {raw_tracepoint={name="kfree", prog_fd=4}}, 16) = 5 bpf(BPF_MAP_CREATE, {map_type=BPF_MAP_TYPE_LPM_TRIE, key_size=8, value_size=12, max_entries=3, map_flags=BPF_F_NO_PREALLOC, inner_map_fd=1, map_name="", map_ifindex=0, btf_fd=-1, btf_key_type_id=0, btf_value_type_id=0, btf_vmlinux_value_type_id=0, map_extra=0}, 72) = 6 [ 53.601632][ T5090] [ 53.603969][ T5090] ============================================ [ 53.610094][ T5090] WARNING: possible recursive locking detected [ 53.616216][ T5090] 6.10.0-rc2-syzkaller-00718-g2ebb87f45b3c #0 Not tainted [ 53.623297][ T5090] -------------------------------------------- [ 53.629436][ T5090] syz-executor400/5090 is trying to acquire lock: [ 53.635821][ T5090] ffff88802201d9f8 (&trie->lock){....}-{2:2}, at: trie_delete_elem+0x96/0x6a0 [ 53.644691][ T5090] [ 53.644691][ T5090] but task is already holding lock: [ 53.652028][ T5090] ffff88802201c9f8 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xc8/0xc00 [ 53.660892][ T5090] [ 53.660892][ T5090] other info that might help us debug this: [ 53.668925][ T5090] Possible unsafe locking scenario: [ 53.668925][ T5090] [ 53.676695][ T5090] CPU0 [ 53.679947][ T5090] ---- [ 53.683200][ T5090] lock(&trie->lock); [ 53.687257][ T5090] lock(&trie->lock); [ 53.691324][ T5090] [ 53.691324][ T5090] *** DEADLOCK *** [ 53.691324][ T5090] [ 53.699452][ T5090] May be due to missing lock nesting notation [ 53.699452][ T5090] [ 53.707755][ T5090] 3 locks held by syz-executor400/5090: [ 53.713279][ T5090] #0: ffffffff8e333fa0 (rcu_read_lock){....}-{1:2}, at: bpf_map_update_value+0x3c4/0x540 [ 53.723190][ T5090] #1: ffff88802201c9f8 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xc8/0xc00 [ 53.732482][ T5090] #2: ffffffff8e333fa0 (rcu_read_lock){....}-{1:2}, at: bpf_trace_run2+0x1fc/0x540 [ 53.741868][ T5090] [ 53.741868][ T5090] stack backtrace: [ 53.747746][ T5090] CPU: 0 PID: 5090 Comm: syz-executor400 Not tainted 6.10.0-rc2-syzkaller-00718-g2ebb87f45b3c #0 [ 53.758231][ T5090] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024 [ 53.768270][ T5090] Call Trace: [ 53.771538][ T5090] [ 53.774451][ T5090] dump_stack_lvl+0x241/0x360 [ 53.779129][ T5090] ? __pfx_dump_stack_lvl+0x10/0x10 [ 53.784313][ T5090] ? print_deadlock_bug+0x479/0x620 [ 53.789497][ T5090] validate_chain+0x15d3/0x5900 [ 53.794345][ T5090] ? __pfx_validate_chain+0x10/0x10 [ 53.799537][ T5090] ? validate_chain+0x11e/0x5900 [ 53.804459][ T5090] ? deref_stack_reg+0x1c7/0x260 [ 53.809385][ T5090] ? __pfx_validate_chain+0x10/0x10 [ 53.814586][ T5090] ? mark_lock+0x9a/0x350 [ 53.818917][ T5090] __lock_acquire+0x1346/0x1fd0 [ 53.823767][ T5090] lock_acquire+0x1ed/0x550 [ 53.828260][ T5090] ? trie_delete_elem+0x96/0x6a0 [ 53.833190][ T5090] ? __pfx_lock_acquire+0x10/0x10 [ 53.838202][ T5090] ? __lock_acquire+0x1346/0x1fd0 [ 53.843323][ T5090] _raw_spin_lock_irqsave+0xd5/0x120 [ 53.848609][ T5090] ? trie_delete_elem+0x96/0x6a0 [ 53.853544][ T5090] ? __pfx__raw_spin_lock_irqsave+0x10/0x10 [ 53.859512][ T5090] ? bpf_send_signal_common+0x34a/0x430 [ 53.865051][ T5090] trie_delete_elem+0x96/0x6a0 [ 53.869801][ T5090] ? __pfx___cant_migrate+0x10/0x10 [ 53.874990][ T5090] ? bpf_trace_run2+0x1fc/0x540 [ 53.879831][ T5090] bpf_prog_029d1888f6cd2729+0x47/0x4b [ 53.885278][ T5090] bpf_trace_run2+0x2ec/0x540 [ 53.889960][ T5090] ? __pfx_bpf_trace_run2+0x10/0x10 [ 53.895158][ T5090] ? trie_update_elem+0x26c/0xc00 [ 53.900170][ T5090] ? _raw_spin_lock_irqsave+0xe1/0x120 [ 53.905619][ T5090] ? __pfx__raw_spin_lock_irqsave+0x10/0x10 [ 53.911500][ T5090] ? trie_update_elem+0x26c/0xc00 [ 53.916522][ T5090] kfree+0x2bb/0x360 [ 53.920413][ T5090] trie_update_elem+0x26c/0xc00 [ 53.925254][ T5090] ? __pfx___might_resched+0x10/0x10 [ 53.930530][ T5090] ? __pfx_lock_release+0x10/0x10 [ 53.935539][ T5090] bpf_map_update_value+0x4d3/0x540 [ 53.940725][ T5090] generic_map_update_batch+0x60d/0x900 [ 53.946263][ T5090] ? __pfx_generic_map_update_batch+0x10/0x10 [ 53.952383][ T5090] ? __pfx_generic_map_update_batch+0x10/0x10 [ 53.958451][ T5090] bpf_map_do_batch+0x3e0/0x690 [ 53.963303][ T5090] __sys_bpf+0x377/0x810 [ 53.967535][ T5090] ? __pfx___sys_bpf+0x10/0x10 [ 53.972298][ T5090] ? __pfx_lockdep_hardirqs_on_prepare+0x10/0x10 [ 53.978613][ T5090] ? do_syscall_64+0x100/0x230 [ 53.983370][ T5090] __x64_sys_bpf+0x7c/0x90 [ 53.987778][ T5090] do_syscall_64+0xf3/0x230 [ 53.992356][ T5090] ? clear_bhb_loop+0x35/0x90 [ 53.997015][ T5090] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 54.002907][ T5090] RIP: 0033:0x7fbb5b20c7e9 [ 54.007308][ T5090] Code: 48 83 c4 28 c3 e8 37 17 00 00 0f 1f 80 00 00 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 [ 54.026984][ T5090] RSP: 002b:00007ffc12536a58 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 [ 54.035381][ T5090] RAX: ffffffffffffffda RBX: 00007ffc12536c28 RCX: 00007fbb5b20c7e9 [ 54.043334][ T5090] RDX: 0000000000000038 RSI: 0000000020000240 RDI: 000000000000001a bpf(BPF_MAP_UPDATE_BATCH, {batch={keys=0x200000c0, values=0x20000140, count=5, map_fd=6, elem_flags=BPF_ANY, flags=0}} => {batch={count=3}}, 56) = -1 ENOSPC (No space left on device) exit_group(0) = ? +++ exited with 0 +++ [ 54.051285][ T5090] RBP: 00