Warning: Permanently added '10.128.0.30' (ED25519) to the list of known hosts. executing program executing program executing program [ 50.054689][ T16] [ 50.057054][ T16] ====================================================== [ 50.064057][ T16] WARNING: possible circular locking dependency detected [ 50.071073][ T16] 6.1.92-syzkaller #0 Not tainted [ 50.076089][ T16] ------------------------------------------------------ [ 50.083092][ T16] rcu_preempt/16 is trying to acquire lock: [ 50.088966][ T16] ffff8880b9928118 (krc.lock){....}-{2:2}, at: kvfree_call_rcu+0x1b2/0x8c0 [ 50.097588][ T16] [ 50.097588][ T16] but task is already holding lock: [ 50.104933][ T16] ffff88807995d238 (&trie->lock){....}-{2:2}, at: trie_delete_elem+0x90/0x690 [ 50.113790][ T16] [ 50.113790][ T16] which lock already depends on the new lock. [ 50.113790][ T16] [ 50.124167][ T16] [ 50.124167][ T16] the existing dependency chain (in reverse order) is: [ 50.133156][ T16] [ 50.133156][ T16] -> #2 (&trie->lock){....}-{2:2}: [ 50.140432][ T16] lock_acquire+0x1f8/0x5a0 [ 50.145442][ T16] _raw_spin_lock_irqsave+0xd1/0x120 [ 50.151238][ T16] trie_delete_elem+0x90/0x690 [ 50.156506][ T16] bpf_prog_2c29ac5cdc6b1842+0x3a/0x3e [ 50.162477][ T16] bpf_trace_run3+0x231/0x440 [ 50.167654][ T16] enqueue_timer+0x440/0x600 [ 50.172746][ T16] __mod_timer+0x92b/0xee0 [ 50.177662][ T16] schedule_timeout+0x1b4/0x300 [ 50.183015][ T16] rcu_gp_fqs_loop+0x2d2/0x1150 [ 50.188369][ T16] rcu_gp_kthread+0xa3/0x3b0 [ 50.193461][ T16] kthread+0x28d/0x320 [ 50.198027][ T16] ret_from_fork+0x1f/0x30 [ 50.202947][ T16] [ 50.202947][ T16] -> #1 (&base->lock){-.-.}-{2:2}: [ 50.210226][ T16] lock_acquire+0x1f8/0x5a0 [ 50.215242][ T16] _raw_spin_lock_irqsave+0xd1/0x120 [ 50.221033][ T16] lock_timer_base+0x120/0x260 [ 50.226299][ T16] __mod_timer+0x1cb/0xee0 [ 50.231216][ T16] queue_delayed_work_on+0x156/0x250 [ 50.237000][ T16] kvfree_call_rcu+0x520/0x8c0 [ 50.242263][ T16] rtnl_register_internal+0x489/0x580 [ 50.248142][ T16] rtnl_register+0x32/0x70 [ 50.253062][ T16] ip_rt_init+0x335/0x3c7 [ 50.257912][ T16] ip_init+0xa/0x14 [ 50.262235][ T16] inet_init+0x2ae/0x3c0 [ 50.266988][ T16] do_one_initcall+0x265/0x8f0 [ 50.272268][ T16] do_initcall_level+0x157/0x207 [ 50.277716][ T16] do_initcalls+0x49/0x86 [ 50.282552][ T16] kernel_init_freeable+0x45c/0x60f [ 50.288262][ T16] kernel_init+0x19/0x290 [ 50.293097][ T16] ret_from_fork+0x1f/0x30 [ 50.298019][ T16] [ 50.298019][ T16] -> #0 (krc.lock){....}-{2:2}: [ 50.305039][ T16] validate_chain+0x1661/0x5950 [ 50.310400][ T16] __lock_acquire+0x125b/0x1f80 [ 50.315758][ T16] lock_acquire+0x1f8/0x5a0 [ 50.320766][ T16] _raw_spin_lock+0x2a/0x40 [ 50.325772][ T16] kvfree_call_rcu+0x1b2/0x8c0 [ 50.331037][ T16] trie_delete_elem+0x520/0x690 [ 50.336484][ T16] bpf_prog_2c29ac5cdc6b1842+0x3a/0x3e [ 50.342445][ T16] bpf_trace_run3+0x231/0x440 [ 50.347622][ T16] enqueue_timer+0x440/0x600 [ 50.352731][ T16] __mod_timer+0x92b/0xee0 [ 50.357694][ T16] schedule_timeout+0x1b4/0x300 [ 50.363058][ T16] rcu_gp_fqs_loop+0x2d2/0x1150 [ 50.368419][ T16] rcu_gp_kthread+0xa3/0x3b0 [ 50.373514][ T16] kthread+0x28d/0x320 [ 50.378084][ T16] ret_from_fork+0x1f/0x30 [ 50.383007][ T16] [ 50.383007][ T16] other info that might help us debug this: [ 50.383007][ T16] [ 50.393212][ T16] Chain exists of: [ 50.393212][ T16] krc.lock --> &base->lock --> &trie->lock [ 50.393212][ T16] [ 50.404923][ T16] Possible unsafe locking scenario: [ 50.404923][ T16] [ 50.412349][ T16] CPU0 CPU1 [ 50.417691][ T16] ---- ---- [ 50.423033][ T16] lock(&trie->lock); [ 50.427083][ T16] lock(&base->lock); [ 50.433651][ T16] lock(&trie->lock); [ 50.440219][ T16] lock(krc.lock); [ 50.444008][ T16] [ 50.444008][ T16] *** DEADLOCK *** [ 50.444008][ T16] [ 50.452129][ T16] 3 locks held by rcu_preempt/16: [ 50.457131][ T16] #0: ffff8880b9928358 (&base->lock){-.-.}-{2:2}, at: lock_timer_base+0x120/0x260 [ 50.466428][ T16] #1: ffffffff8d12ac80 (rcu_read_lock){....}-{1:2}, at: bpf_trace_run3+0x146/0x440 [ 50.475805][ T16] #2: ffff88807995d238 (&trie->lock){....}-{2:2}, at: trie_delete_elem+0x90/0x690 [ 50.485098][ T16] [ 50.485098][ T16] stack backtrace: [ 50.490975][ T16] CPU: 1 PID: 16 Comm: rcu_preempt Not tainted 6.1.92-syzkaller #0 [ 50.498847][ T16] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024 [ 50.508890][ T16] Call Trace: [ 50.512153][ T16] [ 50.515069][ T16] dump_stack_lvl+0x1e3/0x2cb [ 50.519735][ T16] ? nf_tcp_handle_invalid+0x642/0x642 [ 50.525183][ T16] ? print_circular_bug+0x12b/0x1a0 [ 50.530364][ T16] check_noncircular+0x2fa/0x3b0 [ 50.535292][ T16] ? add_chain_block+0x850/0x850 [ 50.540219][ T16] ? lockdep_lock+0x11f/0x2a0 [ 50.544882][ T16] ? __lock_acquire+0x125b/0x1f80 [ 50.549893][ T16] ? _find_first_zero_bit+0xd0/0x100 [ 50.555165][ T16] validate_chain+0x1661/0x5950 [ 50.560009][ T16] ? __stack_depot_save+0x3f5/0x470 [ 50.565191][ T16] ? reacquire_held_locks+0x660/0x660 [ 50.570551][ T16] ? do_raw_spin_unlock+0x137/0x8a0 [ 50.575731][ T16] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 50.581610][ T16] ? _raw_spin_unlock+0x40/0x40 [ 50.586444][ T16] ? stack_trace_save+0x113/0x1c0 [ 50.591455][ T16] ? stack_trace_snprint+0xe0/0xe0 [ 50.596555][ T16] ? mark_lock+0x9a/0x340 [ 50.600870][ T16] __lock_acquire+0x125b/0x1f80 [ 50.605713][ T16] lock_acquire+0x1f8/0x5a0 [ 50.610203][ T16] ? kvfree_call_rcu+0x1b2/0x8c0 [ 50.615122][ T16] ? read_lock_is_recursive+0x10/0x10 [ 50.620488][ T16] ? __phys_addr+0xb6/0x170 [ 50.624978][ T16] _raw_spin_lock+0x2a/0x40 [ 50.629465][ T16] ? kvfree_call_rcu+0x1b2/0x8c0 [ 50.634384][ T16] kvfree_call_rcu+0x1b2/0x8c0 [ 50.639130][ T16] ? rcu_leak_callback+0x10/0x10 [ 50.644054][ T16] ? _raw_spin_lock_irqsave+0xdd/0x120 [ 50.649495][ T16] ? _raw_spin_lock+0x40/0x40 [ 50.654157][ T16] ? longest_prefix_match+0x49b/0x640 [ 50.659520][ T16] trie_delete_elem+0x520/0x690 [ 50.664363][ T16] bpf_prog_2c29ac5cdc6b1842+0x3a/0x3e [ 50.669808][ T16] bpf_trace_run3+0x231/0x440 [ 50.674468][ T16] ? bpf_trace_run3+0x146/0x440 [ 50.679300][ T16] ? bpf_trace_run2+0x410/0x410 [ 50.684130][ T16] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 50.690007][ T16] ? _raw_spin_lock_irqsave+0xdd/0x120 [ 50.695450][ T16] ? _raw_spin_lock+0x40/0x40 [ 50.700110][ T16] enqueue_timer+0x440/0x600 [ 50.704694][ T16] __mod_timer+0x92b/0xee0 [ 50.709094][ T16] ? mod_timer_pending+0x20/0x20 [ 50.714013][ T16] ? lockdep_softirqs_off+0x420/0x420 [ 50.719371][ T16] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 50.725259][ T16] ? _raw_spin_unlock+0x40/0x40 [ 50.730093][ T16] schedule_timeout+0x1b4/0x300 [ 50.734926][ T16] ? console_conditional_schedule+0x40/0x40 [ 50.740801][ T16] ? update_process_times+0x1b0/0x1b0 [ 50.746159][ T16] ? prepare_to_swait_event+0x329/0x350 [ 50.751691][ T16] rcu_gp_fqs_loop+0x2d2/0x1150 [ 50.756535][ T16] ? lockdep_hardirqs_on+0x94/0x130 [ 50.761719][ T16] ? rcu_gp_init+0x15f0/0x15f0 [ 50.766467][ T16] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 50.772347][ T16] ? finish_swait+0xcf/0x1e0 [ 50.776922][ T16] rcu_gp_kthread+0xa3/0x3b0 [ 50.781500][ T16] ? rcu_report_qs_rsp+0x1a0/0x1a0 [ 50.786594][ T16] ? _raw_spin_unlock_irqrestore+0xd9/0x130 [ 50.792644][ T16] ? __kthread_parkme+0x168/0x1c0 [ 50.797656][ T16] kthread+0x28d/0x320 [ 50.801708][ T16] ? rcu_report_qs_rsp+0x1a0/0x1a0 [ 50.806800][ T16] ? kthread_blkcg+0xd0/0xd0 [ 50.811371][ T16] ret_from_fork+0x1f/0x30 [ 50.815777][ T16]