Warning: Permanently added '10.128.0.229' (ED25519) to the list of known hosts. executing program [ 59.325821][ T3546] [ 59.328209][ T3546] ============================================ [ 59.334352][ T3546] WARNING: possible recursive locking detected [ 59.340497][ T3546] 6.1.82-syzkaller #0 Not tainted [ 59.345530][ T3546] -------------------------------------------- [ 59.351674][ T3546] syz-executor375/3546 is trying to acquire lock: [ 59.358085][ T3546] ffff88807c92aa38 (&trie->lock){....}-{2:2}, at: trie_delete_elem+0x90/0x690 [ 59.367003][ T3546] [ 59.367003][ T3546] but task is already holding lock: [ 59.374363][ T3546] ffff88807c92b238 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xc5/0xc00 [ 59.383421][ T3546] [ 59.383421][ T3546] other info that might help us debug this: [ 59.391478][ T3546] Possible unsafe locking scenario: [ 59.391478][ T3546] [ 59.399014][ T3546] CPU0 [ 59.402312][ T3546] ---- [ 59.405595][ T3546] lock(&trie->lock); [ 59.409684][ T3546] lock(&trie->lock); [ 59.413754][ T3546] [ 59.413754][ T3546] *** DEADLOCK *** [ 59.413754][ T3546] [ 59.421896][ T3546] May be due to missing lock nesting notation [ 59.421896][ T3546] [ 59.430219][ T3546] 5 locks held by syz-executor375/3546: [ 59.435757][ T3546] #0: ffffffff8d12a940 (rcu_read_lock){....}-{1:2}, at: bpf_map_update_value+0x207/0x6f0 [ 59.445707][ T3546] #1: ffff88807c92b238 (&trie->lock){....}-{2:2}, at: trie_update_elem+0xc5/0xc00 [ 59.455034][ T3546] #2: ffff8880b9928118 (krc.lock){....}-{2:2}, at: kvfree_call_rcu+0x1b2/0x8c0 [ 59.464116][ T3546] #3: ffff8880b9928358 (&base->lock){-.-.}-{2:2}, at: lock_timer_base+0x120/0x260 [ 59.473428][ T3546] #4: ffffffff8d12a940 (rcu_read_lock){....}-{1:2}, at: bpf_trace_run3+0x146/0x440 [ 59.482843][ T3546] [ 59.482843][ T3546] stack backtrace: [ 59.488723][ T3546] CPU: 1 PID: 3546 Comm: syz-executor375 Not tainted 6.1.82-syzkaller #0 [ 59.497144][ T3546] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/29/2024 [ 59.507202][ T3546] Call Trace: [ 59.510481][ T3546] [ 59.513409][ T3546] dump_stack_lvl+0x1e3/0x2cb [ 59.518132][ T3546] ? nf_tcp_handle_invalid+0x642/0x642 [ 59.523617][ T3546] ? panic+0x75d/0x75d [ 59.527701][ T3546] validate_chain+0x4711/0x5950 [ 59.532575][ T3546] ? lockdep_unlock+0x165/0x300 [ 59.537439][ T3546] ? reacquire_held_locks+0x660/0x660 [ 59.542824][ T3546] ? lockdep_unlock+0x165/0x300 [ 59.547682][ T3546] ? lockdep_lock+0x2a0/0x2a0 [ 59.552455][ T3546] ? unwind_next_frame+0x1a3f/0x2220 [ 59.557761][ T3546] ? validate_chain+0x13ce/0x5950 [ 59.562794][ T3546] ? look_up_lock_class+0x77/0x140 [ 59.567904][ T3546] ? register_lock_class+0x100/0x990 [ 59.573201][ T3546] ? is_dynamic_key+0x260/0x260 [ 59.578059][ T3546] ? mark_lock+0x9a/0x340 [ 59.582414][ T3546] __lock_acquire+0x125b/0x1f80 [ 59.587277][ T3546] lock_acquire+0x1f8/0x5a0 [ 59.591787][ T3546] ? trie_delete_elem+0x90/0x690 [ 59.596742][ T3546] ? read_lock_is_recursive+0x10/0x10 [ 59.602123][ T3546] ? __lock_acquire+0x125b/0x1f80 [ 59.607162][ T3546] _raw_spin_lock_irqsave+0xd1/0x120 [ 59.612449][ T3546] ? trie_delete_elem+0x90/0x690 [ 59.617391][ T3546] ? _raw_spin_lock+0x40/0x40 [ 59.622104][ T3546] ? read_lock_is_recursive+0x10/0x10 [ 59.627484][ T3546] trie_delete_elem+0x90/0x690 [ 59.632257][ T3546] ? __cant_sleep+0x270/0x270 [ 59.636936][ T3546] ? __lock_acquire+0x1f80/0x1f80 [ 59.641974][ T3546] bpf_prog_2c29ac5cdc6b1842+0x3a/0x3e [ 59.647433][ T3546] bpf_trace_run3+0x231/0x440 [ 59.652111][ T3546] ? bpf_trace_run3+0x146/0x440 [ 59.656961][ T3546] ? bpf_trace_run2+0x410/0x410 [ 59.661810][ T3546] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 59.667716][ T3546] ? _raw_spin_lock_irqsave+0xdd/0x120 [ 59.673173][ T3546] ? _raw_spin_lock+0x40/0x40 [ 59.677870][ T3546] enqueue_timer+0x440/0x600 [ 59.682484][ T3546] __mod_timer+0x92b/0xee0 [ 59.686925][ T3546] ? mod_timer_pending+0x20/0x20 [ 59.691905][ T3546] ? read_lock_is_recursive+0x10/0x10 [ 59.697290][ T3546] ? __queue_delayed_work+0x16b/0x210 [ 59.702673][ T3546] queue_delayed_work_on+0x156/0x250 [ 59.707965][ T3546] ? delayed_work_timer_fn+0x80/0x80 [ 59.713269][ T3546] ? llist_add_batch+0x1d0/0x1d0 [ 59.718256][ T3546] ? __virt_addr_valid+0x17f/0x520 [ 59.723381][ T3546] ? __virt_addr_valid+0x17f/0x520 [ 59.728502][ T3546] ? __virt_addr_valid+0x44a/0x520 [ 59.733623][ T3546] ? __phys_addr+0xb6/0x170 [ 59.738136][ T3546] kvfree_call_rcu+0x520/0x8c0 [ 59.742905][ T3546] ? rcu_leak_callback+0x10/0x10 [ 59.747847][ T3546] ? bpf_map_kmalloc_node+0xce/0x1c0 [ 59.753139][ T3546] ? trace_kmalloc+0x22/0xa0 [ 59.757726][ T3546] ? __kmalloc_node+0x154/0x230 [ 59.762604][ T3546] ? longest_prefix_match+0x2db/0x640 [ 59.768001][ T3546] trie_update_elem+0x808/0xc00 [ 59.772884][ T3546] bpf_map_update_value+0x5cf/0x6f0 [ 59.778084][ T3546] generic_map_update_batch+0x579/0x920 [ 59.783642][ T3546] ? rcu_read_unlock+0xa0/0xa0 [ 59.788408][ T3546] ? __fdget+0x14e/0x210 [ 59.792648][ T3546] ? rcu_read_unlock+0xa0/0xa0 [ 59.797415][ T3546] bpf_map_do_batch+0x4d0/0x620 [ 59.802274][ T3546] __sys_bpf+0x658/0x6c0 [ 59.806522][ T3546] ? bpf_link_show_fdinfo+0x2d0/0x2d0 [ 59.811925][ T3546] ? print_irqtrace_events+0x210/0x210 [ 59.817391][ T3546] ? print_irqtrace_events+0x210/0x210 [ 59.822869][ T3546] ? syscall_enter_from_user_mode+0x2e/0x220 [ 59.828844][ T3546] ? lockdep_hardirqs_on+0x94/0x130 [ 59.834037][ T3546] __x64_sys_bpf+0x78/0x90 [ 59.838457][ T3546] do_syscall_64+0x3d/0xb0 [ 59.842881][ T3546] entry_SYSCALL_64_after_hwframe+0x63/0xcd [ 59.848774][ T3546] RIP: 0033:0x7f679ce36eb9 [ 59.853188][ T3546] Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 c1 17 00 00 90 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 executing program executing program [ 59.872797][ T3546] RSP: 002b:00007ffe624b4fd8 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 [ 59.881211][ T3546] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f679ce36eb9 [ 59.889187][ T3546] RDX: 0000000000000038 RSI: 0000000020000300 RDI: 000000000000001a [ 59.897181][ T3546] RBP: 0000000000000000 R08: 0000000000000006 R09: 0000000000000006 [ 59.905150][ T3546] R10: 0000000000000006 R11: 0000000000000246 R12: 0000000000000000 [ 59.913122][ T3546] R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000001 [ 59.921093][ T3546] executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program executing program