inconsistent lock state in trie_delete_elem

Status: upstream: reported C repro on 2025/12/04 20:31
Bug presence: origin:lts-only
[Documentation on labels]
Reported-by: syzbot+c6034ccd86fad3483e8c@syzkaller.appspotmail.com
First crash: 267d, last: 6d00h
Fix bisection: the issue occurs on the latest tested release (bisect log)
Crash: inconsistent lock state in trie_delete_elem (log)
Repro: C syz .config
  
Bug presence (2)
Date Name Commit Repro Result
2025/12/05 linux-6.6.y (ToT) 4791134e4aeb C [report] inconsistent lock state in trie_delete_elem
2025/12/05 upstream (ToT) bc69ed975203 C Didn't crash
Similar bugs (2)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 inconsistent lock state in trie_delete_elem origin:lts-only 4 syz, C inconclusive 81 2d04h 267d 0/3 upstream: reported C repro on 2025/12/04 16:53
linux-5.15 inconsistent lock state in trie_delete_elem origin:lts-only 4 syz, C error 1400 4h26m 267d 0/3 upstream: reported C repro on 2025/12/04 17:55
Fix bisection attempts (7)
Created Duration User Patch Repo Result
2026/07/20 07:49 2h31m fix candidate upstream OK (0) job log
2026/06/07 20:39 16m fix candidate upstream error job log
2026/05/08 04:01 14m fix candidate upstream error job log
2026/03/25 00:23 1m fix candidate upstream error job log
2026/02/21 17:57 1m fix candidate upstream error job log
2026/01/22 08:42 1m fix candidate upstream error job log
2026/01/06 11:13 1h48m bisect fix linux-6.6.y OK (0) job log log

Sample crash report:
================================
WARNING: inconsistent lock state
syzkaller #0 Not tainted
--------------------------------
inconsistent {INITIAL USE} -> {IN-NMI} usage.
syz.0.17/5933 [HC1[1]:SC0[0]:HE0:SE1] takes:
ffff88807d19da38 (&trie->lock){....}-{2:2}, at: trie_delete_elem+0x94/0x630 kernel/bpf/lpm_trie.c:466
{INITIAL USE} state was registered at:
  lock_acquire+0x19e/0x420 kernel/locking/lockdep.c:5754
  __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
  _raw_spin_lock_irqsave+0xb4/0x100 kernel/locking/spinlock.c:162
  trie_delete_elem+0x94/0x630 kernel/bpf/lpm_trie.c:466
  bpf_prog_1db1603a7cfa36fb+0x45/0x49
  bpf_dispatcher_nop_func include/linux/bpf.h:1224 [inline]
  __bpf_prog_run include/linux/filter.h:617 [inline]
  bpf_prog_run include/linux/filter.h:624 [inline]
  bpf_overflow_handler+0x1fc/0x510 kernel/events/core.c:10576
  __perf_event_overflow+0x461/0x660 kernel/events/core.c:9712
  perf_swevent_overflow kernel/events/core.c:9795 [inline]
  perf_swevent_event+0x319/0x570 kernel/events/core.c:9846
  perf_bp_event+0x319/0x430 kernel/events/core.c:10773
  hw_breakpoint_handler arch/x86/kernel/hw_breakpoint.c:555 [inline]
  hw_breakpoint_exceptions_notify+0x23e/0x670 arch/x86/kernel/hw_breakpoint.c:586
  notifier_call_chain+0x18f/0x380 kernel/notifier.c:93
  atomic_notifier_call_chain+0xda/0x180 kernel/notifier.c:231
  notify_die+0x145/0x1a0 kernel/notifier.c:596
  notify_debug+0x2e/0x50 arch/x86/kernel/traps.c:1042
  exc_debug_user arch/x86/kernel/traps.c:1168 [inline]
  noist_exc_debug+0x77/0x120 arch/x86/kernel/traps.c:1205
  asm_exc_debug+0x33/0x40 arch/x86/include/asm/idtentry.h:644
irq event stamp: 8892
hardirqs last  enabled at (8891): [<ffffffff8a8f6125>] syscall_enter_from_user_mode+0x25/0x80 kernel/entry/common.c:117
hardirqs last disabled at (8892): [<ffffffff8a8f28b3>] exc_debug_kernel arch/x86/kernel/traps.c:1063 [inline]
hardirqs last disabled at (8892): [<ffffffff8a8f28b3>] exc_debug+0x73/0x140 arch/x86/kernel/traps.c:1199
softirqs last  enabled at (8838): [<ffffffff8196b9e4>] bpf_prog_load+0x1204/0x1610 kernel/bpf/syscall.c:2779
softirqs last disabled at (8836): [<ffffffff8194b7bc>] spin_lock_bh include/linux/spinlock.h:356 [inline]
softirqs last disabled at (8836): [<ffffffff8194b7bc>] bpf_ksym_add+0x2c/0x330 kernel/bpf/core.c:656

other info that might help us debug this:
 Possible unsafe locking scenario:

       CPU0
       ----
  lock(&trie->lock);
  <Interrupt>
    lock(&trie->lock);

 *** DEADLOCK ***

no locks held by syz.0.17/5933.

stack backtrace:
CPU: 0 PID: 5933 Comm: syz.0.17 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <#DB>
 dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
 lock_acquire+0x2c2/0x420 kernel/locking/lockdep.c:5745
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0xb4/0x100 kernel/locking/spinlock.c:162
 trie_delete_elem+0x94/0x630 kernel/bpf/lpm_trie.c:466
 bpf_prog_1db1603a7cfa36fb+0x45/0x49
 bpf_dispatcher_nop_func include/linux/bpf.h:1224 [inline]
 __bpf_prog_run include/linux/filter.h:617 [inline]
 bpf_prog_run include/linux/filter.h:624 [inline]
 bpf_overflow_handler+0x1fc/0x510 kernel/events/core.c:10576
 __perf_event_overflow+0x461/0x660 kernel/events/core.c:9712
 perf_swevent_overflow kernel/events/core.c:9795 [inline]
 perf_swevent_event+0x319/0x570 kernel/events/core.c:9846
 perf_bp_event+0x319/0x430 kernel/events/core.c:10773
 hw_breakpoint_handler arch/x86/kernel/hw_breakpoint.c:555 [inline]
 hw_breakpoint_exceptions_notify+0x23e/0x670 arch/x86/kernel/hw_breakpoint.c:586
 notifier_call_chain+0x18f/0x380 kernel/notifier.c:93
 atomic_notifier_call_chain+0xda/0x180 kernel/notifier.c:231
 notify_die+0x145/0x1a0 kernel/notifier.c:596
 notify_debug+0x2e/0x50 arch/x86/kernel/traps.c:1042
 exc_debug_kernel arch/x86/kernel/traps.c:1099 [inline]
 exc_debug+0xde/0x140 arch/x86/kernel/traps.c:1199
 asm_exc_debug+0x1e/0x40 arch/x86/include/asm/idtentry.h:644
RIP: 0010:rep_movs_alternative+0x33/0x90 arch/x86/lib/copy_user_64.S:58
Code: 40 83 f9 08 73 21 85 c9 74 0f 8a 06 88 07 48 ff c7 48 ff c6 48 ff c9 75 f1 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 48 8b 06 <48> 89 07 48 83 c6 08 48 83 c7 08 83 e9 08 74 df 83 f9 08 73 e8 eb
RSP: 0018:ffffc90002e57d50 EFLAGS: 00040216
RAX: 0000000affffffff RBX: 0000000000000020 RCX: 0000000000000020
RDX: 0000000000000001 RSI: 0000200000000300 RDI: ffffc90002e57dc0
RBP: ffffc90002e57ee8 R08: ffffc90002e57ddf R09: 1ffff920005cafbb
R10: dffffc0000000000 R11: fffff520005cafbc R12: 0000200000000320
R13: 0000000000000020 R14: ffffc90002e57dc0 R15: 0000200000000300
 </#DB>
 <TASK>
 copy_user_generic arch/x86/include/asm/uaccess_64.h:112 [inline]
 raw_copy_from_user arch/x86/include/asm/uaccess_64.h:127 [inline]
 _copy_from_user+0x8b/0xe0 lib/usercopy.c:23
 copy_from_user include/linux/uaccess.h:183 [inline]
 copy_from_bpfptr_offset include/linux/bpfptr.h:53 [inline]
 copy_from_bpfptr include/linux/bpfptr.h:59 [inline]
 __sys_bpf+0x23e/0x890 kernel/bpf/syscall.c:5451
 __do_sys_bpf kernel/bpf/syscall.c:5582 [inline]
 __se_sys_bpf kernel/bpf/syscall.c:5580 [inline]
 __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:5580
 do_syscall_x64 arch/x86/entry/common.c:46 [inline]
 do_syscall_64+0x55/0xb0 arch/x86/entry/common.c:76
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fe53099e0d9
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 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 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffec54dce58 EFLAGS: 00000246 ORIG_RAX: 0000000000000141
RAX: ffffffffffffffda RBX: 00007fe530c25fa0 RCX: 00007fe53099e0d9
RDX: 0000000000000020 RSI: 0000200000000300 RDI: 0000000000000009
RBP: 00007fe530a35024 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fe530c25fac R14: 00007fe530c25fa0 R15: 00007fe530c25fa0
 </TASK>
----------------
Code disassembly (best guess):
   0:	40 83 f9 08          	rex cmp $0x8,%ecx
   4:	73 21                	jae    0x27
   6:	85 c9                	test   %ecx,%ecx
   8:	74 0f                	je     0x19
   a:	8a 06                	mov    (%rsi),%al
   c:	88 07                	mov    %al,(%rdi)
   e:	48 ff c7             	inc    %rdi
  11:	48 ff c6             	inc    %rsi
  14:	48 ff c9             	dec    %rcx
  17:	75 f1                	jne    0xa
  19:	c3                   	ret
  1a:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
  21:	00 00 00
  24:	0f 1f 00             	nopl   (%rax)
  27:	48 8b 06             	mov    (%rsi),%rax
* 2a:	48 89 07             	mov    %rax,(%rdi) <-- trapping instruction
  2d:	48 83 c6 08          	add    $0x8,%rsi
  31:	48 83 c7 08          	add    $0x8,%rdi
  35:	83 e9 08             	sub    $0x8,%ecx
  38:	74 df                	je     0x19
  3a:	83 f9 08             	cmp    $0x8,%ecx
  3d:	73 e8                	jae    0x27
  3f:	eb                   	.byte 0xeb

Crashes (93):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/23 12:41 linux-6.6.y c610b395b0a5 1e72964b .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/08/12 22:21 linux-6.6.y d27334b2888c 359b2492 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/04/27 03:47 linux-6.6.y 9760bf04666d 9c2d0995 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/01/16 15:59 linux-6.6.y c596736dadab d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/01/16 03:57 linux-6.6.y c596736dadab d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/01/15 21:32 linux-6.6.y c596736dadab d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/01/15 09:11 linux-6.6.y c596736dadab d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/01/15 08:13 linux-6.6.y c596736dadab d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/01/15 06:51 linux-6.6.y c596736dadab d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2025/12/04 21:45 linux-6.6.y 4791134e4aeb d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2025/12/04 20:30 linux-6.6.y 4791134e4aeb d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/05/05 04:50 linux-6.6.y 258cf62a6dfd a898ba9c .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/05/04 14:52 linux-6.6.y 258cf62a6dfd 85f1bcf2 .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/08/18 04:41 linux-6.6.y d27334b2888c 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/08/17 08:20 linux-6.6.y d27334b2888c 746171ee .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/08/09 09:57 linux-6.6.y 6436c12a2ced 5d63f80b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/30 00:03 linux-6.6.y ae068b676196 6ef5c1e2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/29 22:40 linux-6.6.y ae068b676196 6ef5c1e2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/27 19:20 linux-6.6.y c5596480c50e aae9036b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/27 17:52 linux-6.6.y c5596480c50e aae9036b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/27 03:03 linux-6.6.y c5596480c50e 492bab15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/26 20:49 linux-6.6.y c5596480c50e 492bab15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/26 18:12 linux-6.6.y c5596480c50e 492bab15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/26 16:38 linux-6.6.y c5596480c50e 492bab15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/26 14:16 linux-6.6.y c5596480c50e 492bab15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/25 09:19 linux-6.6.y c5596480c50e 492bab15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/25 00:57 linux-6.6.y da47cbc25466 dd737a83 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/23 23:13 linux-6.6.y da47cbc25466 71a13572 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/23 10:11 linux-6.6.y da47cbc25466 881ce5c2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/20 06:09 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/20 02:02 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/19 19:15 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/19 18:00 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/19 00:13 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/18 20:00 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/18 18:59 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/18 16:07 linux-6.6.y da47cbc25466 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/17 06:53 linux-6.6.y da47cbc25466 7f27c57a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/16 06:38 linux-6.6.y da47cbc25466 27a8bd60 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/16 04:41 linux-6.6.y da47cbc25466 27a8bd60 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/15 02:05 linux-6.6.y da47cbc25466 2130f682 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/14 21:11 linux-6.6.y da47cbc25466 2130f682 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/13 03:19 linux-6.6.y da47cbc25466 d78ea535 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/12 21:27 linux-6.6.y da47cbc25466 d78ea535 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/12 16:04 linux-6.6.y da47cbc25466 d78ea535 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/12 01:55 linux-6.6.y da47cbc25466 d78ea535 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/10 07:02 linux-6.6.y da47cbc25466 4167ee25 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/09 10:53 linux-6.6.y da47cbc25466 b9f1ceaa .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/08 05:26 linux-6.6.y da47cbc25466 76cdc0c0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/08 02:12 linux-6.6.y da47cbc25466 76cdc0c0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/07 10:10 linux-6.6.y da47cbc25466 8e71ce95 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/06 01:47 linux-6.6.y da47cbc25466 fcece630 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/05 22:32 linux-6.6.y da47cbc25466 fcece630 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/05 21:04 linux-6.6.y da47cbc25466 fcece630 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
2026/07/05 17:58 linux-6.6.y da47cbc25466 fcece630 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan-perf inconsistent lock state in trie_delete_elem
* Struck through repros no longer work on HEAD.