Oops: general protection fault, probably for non-canonical address 0xdffffc0000000018: 0000 [#1] SMP KASAN PTI
KASAN: null-ptr-deref in range [0x00000000000000c0-0x00000000000000c7]
CPU: 0 UID: 0 PID: 12703 Comm: syz.0.1200 Not tainted 6.15.0-rc5-syzkaller-00136-g9c69f8884904 #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/29/2025
RIP: 0010:__in6_dev_get include/net/addrconf.h:347 [inline]
RIP: 0010:ip6_ignore_linkdown include/net/addrconf.h:443 [inline]
RIP: 0010:find_match+0xa3/0xc90 net/ipv6/route.c:781
Code: 00 00 00 00 00 fc ff df 42 80 7c 25 00 00 74 08 48 89 df e8 2f c8 12 f8 48 89 d8 bb c0 00 00 00 48 03 18 48 89 d8 48 c1 e8 03 <42> 80 3c 20 00 74 08 48 89 df e8 0e c8 12 f8 48 8b 1b e8 76 11 47
RSP: 0018:ffffc900000067b0 EFLAGS: 00010206
RAX: 0000000000000018 RBX: 00000000000000c0 RCX: 0000000000000100
RDX: ffff8880310e8000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 1ffff1100510ff84 R08: ffffc90000006b40 R09: ffffc90000006b50
R10: ffffc900000069a0 R11: ffffffff8a0efac0 R12: dffffc0000000000
R13: 0000000000000002 R14: 1ffff1100510ff86 R15: ffff88802887fc37
FS: 0000000000000000(0000) GS:ffff8881260cc000(0063) knlGS:00000000f5045b40
CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033
CR2: 00000000800c0018 CR3: 0000000020ed6000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 000000000000000e DR6: 00000000ffff0ff0 DR7: 0000000000000400
Call Trace:
rt6_nh_find_match+0xd9/0x150 net/ipv6/route.c:821
nexthop_for_each_fib6_nh+0x1c6/0x400 net/ipv4/nexthop.c:1515
__find_rr_leaf+0x461/0x6d0 net/ipv6/route.c:862
find_rr_leaf net/ipv6/route.c:890 [inline]
rt6_select net/ipv6/route.c:934 [inline]
fib6_table_lookup+0x39f/0xa80 net/ipv6/route.c:2230
ip6_pol_route+0x222/0x1180 net/ipv6/route.c:2266
pol_lookup_func include/net/ip6_fib.h:616 [inline]
fib6_rule_lookup+0x348/0x6f0 net/ipv6/fib6_rules.c:125
ip6_route_output_flags_noref net/ipv6/route.c:2674 [inline]
ip6_route_output_flags+0x364/0x5d0 net/ipv6/route.c:2686
ip6_route_output include/net/ip6_route.h:93 [inline]
ip6_dst_lookup_tail+0x1ae/0x1500 net/ipv6/ip6_output.c:1128
ip6_dst_lookup_flow+0x47/0xe0 net/ipv6/ip6_output.c:1259
udp_tunnel6_dst_lookup+0x231/0x3c0 net/ipv6/ip6_udp_tunnel.c:165
geneve6_xmit_skb drivers/net/geneve.c:957 [inline]
geneve_xmit+0xd2e/0x2b70 drivers/net/geneve.c:1043
__netdev_start_xmit include/linux/netdevice.h:5204 [inline]
netdev_start_xmit include/linux/netdevice.h:5213 [inline]
xmit_one net/core/dev.c:3776 [inline]
dev_hard_start_xmit+0x2ff/0x880 net/core/dev.c:3792
__dev_queue_xmit+0x1adf/0x3a70 net/core/dev.c:4629
neigh_output include/net/neighbour.h:539 [inline]
ip6_finish_output2+0x11fb/0x16a0 net/ipv6/ip6_output.c:141
__ip6_finish_output net/ipv6/ip6_output.c:-1 [inline]
ip6_finish_output+0x234/0x7d0 net/ipv6/ip6_output.c:226
NF_HOOK include/linux/netfilter.h:314 [inline]
ndisc_send_skb+0xb47/0x1400 net/ipv6/ndisc.c:513
addrconf_rs_timer+0x369/0x670 net/ipv6/addrconf.c:4041
call_timer_fn+0x17b/0x5f0 kernel/time/timer.c:1789
expire_timers kernel/time/timer.c:1840 [inline]
__run_timers kernel/time/timer.c:2414 [inline]
__run_timer_base+0x61a/0x860 kernel/time/timer.c:2426
run_timer_base kernel/time/timer.c:2435 [inline]
run_timer_softirq+0xb7/0x180 kernel/time/timer.c:2445
handle_softirqs+0x283/0x870 kernel/softirq.c:579
__do_softirq kernel/softirq.c:613 [inline]
invoke_softirq kernel/softirq.c:453 [inline]
__irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680
irq_exit_rcu+0x9/0x30 kernel/softirq.c:696
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline]
sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1049
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:lock_is_held_type+0x137/0x190 kernel/locking/lockdep.c:5943
Code: 01 75 44 48 c7 04 24 00 00 00 00 9c 8f 04 24 f7 04 24 00 02 00 00 75 4c 41 f7 c4 00 02 00 00 74 01 fb 65 48 8b 05 89 34 1f 07 <48> 3b 44 24 08 75 43 89 d8 48 83 c4 10 5b 41 5c 41 5d 41 5e 41 5f
RSP: 0018:ffffc9000ac47238 EFLAGS: 00000206
RAX: 24c8a8f4edb8f700 RBX: 0000000000000000 RCX: 24c8a8f4edb8f700
RDX: 0000000000000000 RSI: ffffffff8d935c50 RDI: ffffffff8bc1d260
RBP: 00000000ffffffff R08: ffffffff8f7ed177 R09: 1ffffffff1efda2e
R10: dffffc0000000000 R11: fffffbfff1efda2f R12: 0000000000000246
R13: ffff8880310e8000 R14: ffffffff8df3b920 R15: 0000000000000001
lock_is_held include/linux/lockdep.h:249 [inline]
schedule_debug kernel/sched/core.c:5968 [inline]
__schedule+0x274/0x4cd0 kernel/sched/core.c:6666
preempt_schedule_common+0x83/0xd0 kernel/sched/core.c:6947
preempt_schedule+0xae/0xc0 kernel/sched/core.c:6971
preempt_schedule_thunk+0x16/0x30 arch/x86/entry/thunk.S:12
__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
_raw_spin_unlock_irqrestore+0xfd/0x110 kernel/locking/spinlock.c:194
spin_unlock_irqrestore include/linux/spinlock.h:406 [inline]
__wake_up_common_lock+0x190/0x1f0 kernel/sched/wait.c:108
__unix_dgram_recvmsg+0x49b/0xdc0 net/unix/af_unix.c:2447
sock_recvmsg_nosec+0x183/0x1c0 net/socket.c:1017
____sys_recvmsg+0x3aa/0x460 net/socket.c:2784
___sys_recvmsg+0x1b5/0x510 net/socket.c:2828
do_recvmmsg+0x36a/0x760 net/socket.c:2915
__sys_recvmmsg+0x19d/0x280 net/socket.c:2997
__do_compat_sys_recvmmsg_time32 net/compat.c:418 [inline]
__se_compat_sys_recvmmsg_time32 net/compat.c:414 [inline]
__ia32_compat_sys_recvmmsg_time32+0xbf/0xe0 net/compat.c:414
do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
__do_fast_syscall_32+0xb4/0x110 arch/x86/entry/syscall_32.c:306
do_fast_syscall_32+0x34/0x80 arch/x86/entry/syscall_32.c:331
entry_SYSENTER_compat_after_hwframe+0x84/0x8e
RIP: 0023:0xf7f48539
Code: 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90
RSP: 002b:00000000f504555c EFLAGS: 00000206 ORIG_RAX: 0000000000000151
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00000000800000c0
RDX: 0000000000010106 RSI: 0000000000000002 RDI: 0000000000000000
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000206 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:__in6_dev_get include/net/addrconf.h:347 [inline]
RIP: 0010:ip6_ignore_linkdown include/net/addrconf.h:443 [inline]
RIP: 0010:find_match+0xa3/0xc90 net/ipv6/route.c:781
Code: 00 00 00 00 00 fc ff df 42 80 7c 25 00 00 74 08 48 89 df e8 2f c8 12 f8 48 89 d8 bb c0 00 00 00 48 03 18 48 89 d8 48 c1 e8 03 <42> 80 3c 20 00 74 08 48 89 df e8 0e c8 12 f8 48 8b 1b e8 76 11 47
RSP: 0018:ffffc900000067b0 EFLAGS: 00010206
RAX: 0000000000000018 RBX: 00000000000000c0 RCX: 0000000000000100
RDX: ffff8880310e8000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 1ffff1100510ff84 R08: ffffc90000006b40 R09: ffffc90000006b50
R10: ffffc900000069a0 R11: ffffffff8a0efac0 R12: dffffc0000000000
R13: 0000000000000002 R14: 1ffff1100510ff86 R15: ffff88802887fc37
FS: 0000000000000000(0000) GS:ffff8881260cc000(0063) knlGS:00000000f5045b40
CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033
CR2: 00000000800c0018 CR3: 0000000020ed6000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 000000000000000e DR6: 00000000ffff0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess), 7 bytes skipped:
0: df 42 80 filds -0x80(%rdx)
3: 7c 25 jl 0x2a
5: 00 00 add %al,(%rax)
7: 74 08 je 0x11
9: 48 89 df mov %rbx,%rdi
c: e8 2f c8 12 f8 call 0xf812c840
11: 48 89 d8 mov %rbx,%rax
14: bb c0 00 00 00 mov $0xc0,%ebx
19: 48 03 18 add (%rax),%rbx
1c: 48 89 d8 mov %rbx,%rax
1f: 48 c1 e8 03 shr $0x3,%rax
* 23: 42 80 3c 20 00 cmpb $0x0,(%rax,%r12,1) <-- trapping instruction
28: 74 08 je 0x32
2a: 48 89 df mov %rbx,%rdi
2d: e8 0e c8 12 f8 call 0xf812c840
32: 48 8b 1b mov (%rbx),%rbx
35: e8 .byte 0xe8
36: 76 11 jbe 0x49
38: 47 rex.RXB