syzbot


KASAN: stack-out-of-bounds Read in __xfrm_dst_hash (2)

Status: upstream: reported C repro on 2025/12/20 23:50
Reported-by: syzbot+fac42f9c9205fc907ee0@syzkaller.appspotmail.com
First crash: 280d, last: 13d
Fix bisection: failed (error log, bisect log)
  
Similar bugs (2)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
android-5-15 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash origin:lts 17 C error 5 10d 135d 0/2 upstream: reported C repro on 2026/01/31 15:19
android-5-10 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash 17 1 489d 489d 0/2 auto-obsoleted due to no activity on 2025/05/12 11:45
Last patch testing requests (6)
Created Duration User Patch Repo Result
2026/05/07 20:43 12m retest repro android13-5.10-lts report log
2026/04/14 02:38 6m retest repro android13-5.10-lts report log
2026/02/10 19:21 5m retest repro android13-5.10-lts report log
2026/01/04 00:53 6m retest repro android13-5.10-lts report log
2025/12/02 11:30 38m retest repro android13-5.10-lts report log
2025/09/22 20:25 5m retest repro android13-5.10-lts report log

Sample crash report:
==================================================================
BUG: KASAN: stack-out-of-bounds in jhash2 include/linux/jhash.h:138 [inline]
BUG: KASAN: stack-out-of-bounds in __xfrm6_addr_hash net/xfrm/xfrm_hash.h:16 [inline]
BUG: KASAN: stack-out-of-bounds in __xfrm6_daddr_saddr_hash net/xfrm/xfrm_hash.h:29 [inline]
BUG: KASAN: stack-out-of-bounds in __xfrm_dst_hash+0x399/0x480 net/xfrm/xfrm_hash.h:95
Read of size 4 at addr ffffc90000170b18 by task swapper/1/0

CPU: 1 PID: 0 Comm: swapper/1 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/18/2026
Call Trace:
 <IRQ>
 __dump_stack+0x21/0x24 lib/dump_stack.c:77
 dump_stack_lvl+0x1a7/0x208 lib/dump_stack.c:118
 print_address_description+0x7f/0x2c0 mm/kasan/report.c:248
 __kasan_report mm/kasan/report.c:435 [inline]
 kasan_report+0xe2/0x130 mm/kasan/report.c:452
 __asan_report_load4_noabort+0x14/0x20 mm/kasan/report_generic.c:308
 jhash2 include/linux/jhash.h:138 [inline]
 __xfrm6_addr_hash net/xfrm/xfrm_hash.h:16 [inline]
 __xfrm6_daddr_saddr_hash net/xfrm/xfrm_hash.h:29 [inline]
 __xfrm_dst_hash+0x399/0x480 net/xfrm/xfrm_hash.h:95
 xfrm_dst_hash net/xfrm/xfrm_state.c:63 [inline]
 xfrm_state_find+0x28c/0x28b0 net/xfrm/xfrm_state.c:1068
 xfrm_tmpl_resolve_one net/xfrm/xfrm_policy.c:2398 [inline]
 xfrm_tmpl_resolve net/xfrm/xfrm_policy.c:2443 [inline]
 xfrm_resolve_and_create_bundle+0x697/0x29f0 net/xfrm/xfrm_policy.c:2736
 xfrm_bundle_lookup net/xfrm/xfrm_policy.c:2971 [inline]
 xfrm_lookup_with_ifid+0x7ea/0x1a80 net/xfrm/xfrm_policy.c:3102
 xfrm_lookup net/xfrm/xfrm_policy.c:3194 [inline]
 xfrm_lookup_route+0x3c/0x170 net/xfrm/xfrm_policy.c:3205
 ip_route_output_flow+0x1f8/0x2f0 net/ipv4/route.c:2808
 ip_route_output_ports include/net/route.h:169 [inline]
 igmpv3_newpack+0x281/0xc80 net/ipv4/igmp.c:372
 add_grhead+0x75/0x2e0 net/ipv4/igmp.c:443
 add_grec+0x116b/0x1410 net/ipv4/igmp.c:577
 igmpv3_send_cr net/ipv4/igmp.c:714 [inline]
 igmp_ifc_timer_expire+0x89e/0xf80 net/ipv4/igmp.c:813
 call_timer_fn+0x38/0x290 kernel/time/timer.c:1450
 expire_timers kernel/time/timer.c:1495 [inline]
 __run_timers+0x650/0x9e0 kernel/time/timer.c:1789
 run_timer_softirq+0x6a/0xf0 kernel/time/timer.c:1802
 __do_softirq+0x255/0x563 kernel/softirq.c:309
 asm_call_irq_on_stack+0xf/0x20
 </IRQ>
 __run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline]
 run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline]
 do_softirq_own_stack+0x60/0x80 arch/x86/kernel/irq_64.c:77
 invoke_softirq kernel/softirq.c:405 [inline]
 __irq_exit_rcu+0x128/0x150 kernel/softirq.c:435
 irq_exit_rcu+0x9/0x10 kernel/softirq.c:447
 sysvec_apic_timer_interrupt+0xbf/0xe0 arch/x86/kernel/apic/apic.c:1106
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:635
RIP: 0010:default_idle+0x12/0x20 arch/x86/kernel/process.c:718
Code: 44 2a 00 00 49 bd 00 00 00 00 00 fc ff df e9 67 ff ff ff e8 d0 f7 fa ff 55 48 89 e5 0f 1f 44 00 00 0f 00 2d 70 0a 62 00 fb f4 <5d> c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 55 48 89 e5 41 57 41 56
RSP: 0018:ffffc90000107db8 EFLAGS: 00000256
RAX: ffff8881f7100000 RBX: ffff8881002962c0 RCX: 000000000000f9be
RDX: 0000000000000001 RSI: ffffffff85408f40 RDI: ffffffff85408f00
RBP: ffffc90000107db8 R08: ffff8881f71573d3 R09: 1ffff1103ee2ae7a
R10: dffffc0000000000 R11: ffffed103ee2ae7b R12: 0000000000000000
R13: 1ffff11020052c58 R14: dffffc0000000000 R15: dffffc0000000000
 arch_cpu_idle+0xa/0x10 arch/x86/kernel/process.c:709
 default_idle_call+0x71/0x1d0 kernel/sched/idle.c:114
 cpuidle_idle_call kernel/sched/idle.c:204 [inline]
 do_idle+0x368/0x620 kernel/sched/idle.c:328
 cpu_startup_entry+0x18/0x20 kernel/sched/idle.c:425
 start_secondary+0x2e9/0x3a0 arch/x86/kernel/smpboot.c:276
 secondary_startup_64_no_verify+0xad/0xbb


Memory state around the buggy address:
 ffffc90000170a00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffffc90000170a80: 00 00 00 00 00 00 00 00 f1 f1 f1 f1 00 00 00 00
>ffffc90000170b00: 00 00 00 f3 f3 f3 f3 f3 00 00 00 00 00 00 00 00
                            ^
 ffffc90000170b80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffffc90000170c00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
==================================================================
----------------
Code disassembly (best guess), 2 bytes skipped:
   0:	00 00                	add    %al,(%rax)
   2:	49 bd 00 00 00 00 00 	movabs $0xdffffc0000000000,%r13
   9:	fc ff df
   c:	e9 67 ff ff ff       	jmp    0xffffff78
  11:	e8 d0 f7 fa ff       	call   0xfffaf7e6
  16:	55                   	push   %rbp
  17:	48 89 e5             	mov    %rsp,%rbp
  1a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
  1f:	0f 00 2d 70 0a 62 00 	verw   0x620a70(%rip)        # 0x620a96
  26:	fb                   	sti
  27:	f4                   	hlt
* 28:	5d                   	pop    %rbp <-- trapping instruction
  29:	c3                   	ret
  2a:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
  31:	00 00 00
  34:	66 90                	xchg   %ax,%ax
  36:	55                   	push   %rbp
  37:	48 89 e5             	mov    %rsp,%rbp
  3a:	41 57                	push   %r15
  3c:	41 56                	push   %r14

Crashes (5):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/06/02 19:33 android13-5.10-lts 4a079a5d30eb 62fe1528 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash
2026/05/15 03:06 android13-5.10-lts 1b32327554da 6ccb967e .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash
2025/12/20 23:48 android13-5.10-lts e253c52bbdfc d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash
2025/09/08 11:07 android13-5.10-lts 48647f2c6800 d291dd2d .config console log report syz / log [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash
2026/05/15 02:39 android13-5.10-lts 1b32327554da 6ccb967e .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-10 KASAN: stack-out-of-bounds Read in __xfrm_dst_hash
* Struck through repros no longer work on HEAD.