============================================ WARNING: possible recursive locking detected syzkaller #0 Not tainted -------------------------------------------- syz.2.350/7536 is trying to acquire lock: ffffe8ffffc74830 (&loc_l->lock){-.-.}-{2:2}, at: bpf_common_lru_push_free kernel/bpf/bpf_lru_list.c:514 [inline] ffffe8ffffc74830 (&loc_l->lock){-.-.}-{2:2}, at: bpf_lru_push_free+0x337/0xba0 kernel/bpf/bpf_lru_list.c:553 but task is already holding lock: ffffe8ffffc74830 (&loc_l->lock){-.-.}-{2:2}, at: bpf_common_lru_pop_free kernel/bpf/bpf_lru_list.c:440 [inline] ffffe8ffffc74830 (&loc_l->lock){-.-.}-{2:2}, at: bpf_lru_pop_free+0x19d/0x1c90 kernel/bpf/bpf_lru_list.c:496 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&loc_l->lock); lock(&loc_l->lock); *** DEADLOCK *** May be due to missing lock nesting notation 3 locks held by syz.2.350/7536: #0: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:331 [inline] #0: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:867 [inline] #0: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: bpf_percpu_hash_update+0x27/0x200 kernel/bpf/hashtab.c:2409 #1: ffffe8ffffc74830 (&loc_l->lock){-.-.}-{2:2}, at: bpf_common_lru_pop_free kernel/bpf/bpf_lru_list.c:440 [inline] #1: ffffe8ffffc74830 (&loc_l->lock){-.-.}-{2:2}, at: bpf_lru_pop_free+0x19d/0x1c90 kernel/bpf/bpf_lru_list.c:496 #2: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:331 [inline] #2: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:867 [inline] #2: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: __bpf_trace_run kernel/trace/bpf_trace.c:2074 [inline] #2: ffffffff8db3ac60 (rcu_read_lock){....}-{1:3}, at: bpf_trace_run2+0x182/0x4b0 kernel/trace/bpf_trace.c:2116 stack backtrace: