============================================ WARNING: possible recursive locking detected syzkaller #0 Not tainted -------------------------------------------- kworker/1:0/25 is trying to acquire lock: ffff888026356838 (rhashtable_bucket){-.-.}-{0:0}, at: rht_lock+0x8b/0x180 include/linux/rhashtable.h:330 but task is already holding lock: ffff888026356838 (rhashtable_bucket){-.-.}-{0:0}, at: rht_lock+0x8b/0x180 include/linux/rhashtable.h:330 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(rhashtable_bucket); lock(rhashtable_bucket); *** DEADLOCK *** May be due to missing lock nesting notation locks held by kworker/1:0/25: 7, last CPU#1: #0: ffff88801b06b140 ((wq_completion)events){+.+.}-{0:0}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #0: ffff88801b06b140 ((wq_completion)events){+.+.}-{0:0}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #0: ffff88801b06b140 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3361 [inline] #0: ffff88801b06b140 ((wq_completion)events){+.+.}-{0:0}, at: process_scheduled_works+0x97a/0x1630 kernel/workqueue.c:3479 #1: ffffc900001f7c40 ((work_completion)(&ht->run_work)){+.+.}-{0:0}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #1: ffffc900001f7c40 ((work_completion)(&ht->run_work)){+.+.}-{0:0}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #1: ffffc900001f7c40 ((work_completion)(&ht->run_work)){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3361 [inline] #1: ffffc900001f7c40 ((work_completion)(&ht->run_work)){+.+.}-{0:0}, at: process_scheduled_works+0x97a/0x1630 kernel/workqueue.c:3479 #2: ffff88805ea082f0 (&ht->mutex#10){+.+.}-{4:4}, at: rht_deferred_worker+0x43/0x2250 lib/rhashtable.c:433 #3: ffff888026356838 (rhashtable_bucket){-.-.}-{0:0}, at: rht_lock+0x8b/0x180 include/linux/rhashtable.h:330 #4: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #4: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #4: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: trace_call_bpf+0xb4/0xb80 kernel/trace/bpf_trace.c:-1 #5: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #5: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #5: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: class_rcu_constructor include/linux/rcupdate.h:1216 [inline] #5: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rhtab_map_delete_elem+0x21/0x190 kernel/bpf/hashtab.c:2971 #6: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #6: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #6: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: __rhashtable_remove_fast include/linux/rhashtable.h:1136 [inline] #6: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rhashtable_remove_fast include/linux/rhashtable.h:1174 [inline] #6: ffffffff8ed5c920 (rcu_read_lock){....}-{1:3}, at: rhtab_delete_elem+0x15f/0x1b00 kernel/bpf/hashtab.c:-1 stack backtrace: CPU: 1 UID: 0 PID: 25 Comm: kworker/1:0 Not tainted syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Workqueue: events rht_deferred_worker Call Trace: dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 print_deadlock_bug+0x27a/0x290 kernel/locking/lockdep.c:3085 check_deadlock kernel/locking/lockdep.c:3137 [inline] validate_chain kernel/locking/lockdep.c:3939 [inline] __lock_acquire+0x25db/0x2de0 kernel/locking/lockdep.c:5288 lock_acquire+0x115/0x350 kernel/locking/lockdep.c:5942 rht_lock+0xa3/0x180 include/linux/rhashtable.h:330 __rhashtable_remove_fast_one include/linux/rhashtable.h:1064 [inline] __rhashtable_remove_fast include/linux/rhashtable.h:1145 [inline] rhashtable_remove_fast include/linux/rhashtable.h:1174 [inline] rhtab_delete_elem+0x407/0x1b00 kernel/bpf/hashtab.c:2947 rhtab_map_delete_elem+0xe2/0x190 kernel/bpf/hashtab.c:2977 bpf_prog_a4f1e23443ac9f8e+0x4e/0x56 bpf_dispatcher_nop_func include/linux/bpf.h:1483 [inline] __bpf_prog_run include/linux/filter.h:779 [inline] bpf_prog_run include/linux/filter.h:786 [inline] bpf_prog_run_array include/linux/bpf.h:2635 [inline] trace_call_bpf+0x3f1/0xb80 kernel/trace/bpf_trace.c:147 perf_trace_run_bpf_submit+0x78/0x170 kernel/events/core.c:11430 do_perf_trace_lock include/trace/events/lock.h:49 [inline] perf_trace_lock+0x32e/0x410 include/trace/events/lock.h:49 __do_trace_lock_release include/trace/events/lock.h:68 [inline] trace_lock_release include/trace/events/lock.h:68 [inline] lock_release+0x396/0x3c0 kernel/locking/lockdep.c:5954 rht_unlock+0x26/0x140 include/linux/rhashtable.h:352 rhashtable_rehash_chain lib/rhashtable.c:307 [inline] rhashtable_rehash_table lib/rhashtable.c:342 [inline] rht_deferred_worker+0x184a/0x2250 lib/rhashtable.c:448 process_one_work kernel/workqueue.c:3396 [inline] process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3479 worker_thread+0xa47/0xfb0 kernel/workqueue.c:3560 kthread+0x38b/0x480 kernel/kthread.c:436 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245