./strace-static-x86_64 -e \!wait4,clock_nanosleep,nanosleep -s 100 -x -f ./syz-executor2811637406 <...> Warning: Permanently added '10.128.1.170' (ED25519) to the list of known hosts. execve("./syz-executor2811637406", ["./syz-executor2811637406"], 0x7ffc62b20f40 /* 10 vars */) = 0 brk(NULL) = 0x55557b081000 brk(0x55557b081d00) = 0x55557b081d00 arch_prctl(ARCH_SET_FS, 0x55557b081380) = 0 set_tid_address(0x55557b081650) = 5089 set_robust_list(0x55557b081660, 24) = 0 rseq(0x55557b081ca0, 0x20, 0, 0x53053053) = 0 prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0 readlink("/proc/self/exe", "/root/syz-executor2811637406", 4096) = 28 getrandom("\xa2\xc4\x20\xc8\x74\x81\x24\xd7", 8, GRND_NONBLOCK) = 8 brk(NULL) = 0x55557b081d00 brk(0x55557b0a2d00) = 0x55557b0a2d00 brk(0x55557b0a3000) = 0x55557b0a3000 mprotect(0x7fc9a23fd000, 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 [ 57.403781][ T5089] [ 57.406152][ T5089] ============================================ [ 57.412285][ T5089] WARNING: possible recursive locking detected [ 57.418410][ T5089] 6.9.0-syzkaller-08544-g4b377b4868ef #0 Not tainted [ 57.425060][ T5089] -------------------------------------------- [ 57.431200][ T5089] syz-executor281/5089 is trying to acquire lock: [ 57.437587][ T5089] ffff88802ac939f8 (&trie->lock){....}-{2:2}, at: trie_delete_elem+0x96/0x6a0 [ 57.446463][ T5089] [ 57.446463][ T5089] but task is already holding lock: [ 57.453822][ T5089] ffff88802ac909f8 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xc8/0xc00 [ 57.462682][ T5089] [ 57.462682][ T5089] other info that might help us debug this: [ 57.470725][ T5089] Possible unsafe locking scenario: [ 57.470725][ T5089] [ 57.478183][ T5089] CPU0 [ 57.481444][ T5089] ---- [ 57.484721][ T5089] lock(&trie->lock); [ 57.488790][ T5089] lock(&trie->lock); [ 57.492840][ T5089] [ 57.492840][ T5089] *** DEADLOCK *** [ 57.492840][ T5089] [ 57.501059][ T5089] May be due to missing lock nesting notation [ 57.501059][ T5089] [ 57.509427][ T5089] 3 locks held by syz-executor281/5089: [ 57.514985][ T5089] #0: ffffffff8e333d20 (rcu_read_lock){....}-{1:2}, at: bpf_map_update_value+0x3c4/0x540 [ 57.524895][ T5089] #1: ffff88802ac909f8 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xc8/0xc00 [ 57.534200][ T5089] #2: ffffffff8e333d20 (rcu_read_lock){....}-{1:2}, at: bpf_trace_run2+0x1fc/0x540 [ 57.543576][ T5089] [ 57.543576][ T5089] stack backtrace: [ 57.549465][ T5089] CPU: 1 PID: 5089 Comm: syz-executor281 Not tainted 6.9.0-syzkaller-08544-g4b377b4868ef #0 [ 57.559503][ T5089] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024 [ 57.569558][ T5089] Call Trace: [ 57.572843][ T5089] [ 57.575768][ T5089] dump_stack_lvl+0x241/0x360 [ 57.580454][ T5089] ? __pfx_dump_stack_lvl+0x10/0x10 [ 57.585651][ T5089] ? print_deadlock_bug+0x479/0x620 [ 57.590838][ T5089] ? _find_first_zero_bit+0xd4/0x100 [ 57.596141][ T5089] validate_chain+0x15c1/0x58e0 [ 57.600985][ T5089] ? __pfx_validate_chain+0x10/0x10 [ 57.606174][ T5089] ? validate_chain+0x11b/0x58e0 [ 57.611095][ T5089] ? deref_stack_reg+0x1c7/0x260 [ 57.616037][ T5089] ? __pfx_validate_chain+0x10/0x10 [ 57.621228][ T5089] ? 0xffffffffa00007c8 [ 57.625373][ T5089] ? 0xffffffffa00007c8 [ 57.629532][ T5089] ? mark_lock+0x9a/0x350 [ 57.633848][ T5089] __lock_acquire+0x1346/0x1fd0 [ 57.638711][ T5089] lock_acquire+0x1ed/0x550 [ 57.643199][ T5089] ? trie_delete_elem+0x96/0x6a0 [ 57.648123][ T5089] ? __pfx_lock_acquire+0x10/0x10 [ 57.653132][ T5089] ? __lock_acquire+0x1346/0x1fd0 [ 57.658173][ T5089] _raw_spin_lock_irqsave+0xd5/0x120 [ 57.663452][ T5089] ? trie_delete_elem+0x96/0x6a0 [ 57.668379][ T5089] ? __pfx__raw_spin_lock_irqsave+0x10/0x10 [ 57.674279][ T5089] ? bpf_send_signal_common+0x34a/0x430 [ 57.679840][ T5089] trie_delete_elem+0x96/0x6a0 [ 57.684590][ T5089] ? __pfx___cant_migrate+0x10/0x10 [ 57.689776][ T5089] ? bpf_trace_run2+0x1fc/0x540 [ 57.694614][ T5089] bpf_prog_029d1888f6cd2729+0x47/0x4b [ 57.700228][ T5089] bpf_trace_run2+0x2ec/0x540 [ 57.704894][ T5089] ? __pfx_bpf_trace_run2+0x10/0x10 [ 57.710079][ T5089] ? trie_update_elem+0x26c/0xc00 [ 57.715090][ T5089] ? _raw_spin_lock_irqsave+0xe1/0x120 [ 57.720576][ T5089] ? __pfx__raw_spin_lock_irqsave+0x10/0x10 [ 57.726484][ T5089] ? trie_update_elem+0x26c/0xc00 [ 57.731583][ T5089] kfree+0x2bd/0x3b0 [ 57.735482][ T5089] trie_update_elem+0x26c/0xc00 [ 57.740335][ T5089] ? __pfx___might_resched+0x10/0x10 [ 57.745692][ T5089] ? __pfx_lock_release+0x10/0x10 [ 57.750714][ T5089] bpf_map_update_value+0x4d3/0x540 [ 57.755916][ T5089] generic_map_update_batch+0x60d/0x900 [ 57.761450][ T5089] ? __pfx_generic_map_update_batch+0x10/0x10 [ 57.767594][ T5089] ? __pfx_generic_map_update_batch+0x10/0x10 [ 57.773657][ T5089] bpf_map_do_batch+0x3e0/0x690 [ 57.778490][ T5089] __sys_bpf+0x377/0x810 [ 57.782720][ T5089] ? __pfx___sys_bpf+0x10/0x10 [ 57.787471][ T5089] ? __pfx_lockdep_hardirqs_on_prepare+0x10/0x10 [ 57.793779][ T5089] ? do_syscall_64+0x102/0x240 [ 57.798527][ T5089] __x64_sys_bpf+0x7c/0x90 [ 57.802925][ T5089] do_syscall_64+0xf5/0x240 [ 57.807408][ T5089] ? clear_bhb_loop+0x35/0x90 [ 57.812069][ T5089] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 57.817945][ T5089] RIP: 0033:0x7fc9a238a7e9 [ 57.822340][ T5089] 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 [ 57.841926][ T5089] RSP: 002b:00007ffd2358eae8 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 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 +++ [ 57.850317][ T5089] RAX: ffffffffffffffda RBX: 00007ffd2358ec