Oops: general protection fault, probably for non-canonical address 0xdffffc0000000008: 0000 [#1] PREEMPT SMP KASAN NOPTI
KASAN: null-ptr-deref in range [0x0000000000000040-0x0000000000000047]
CPU: 2 PID: 1128 Comm: kworker/u32:9 Not tainted 6.10.0-rc1-syzkaller-00027-g4a4be1ad3a6e #0
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
Workqueue: wg-kex-wg1 wg_packet_handshake_send_worker
RIP: 0010:rt_cache_valid net/ipv4/route.c:1550 [inline]
RIP: 0010:__mkroute_output net/ipv4/route.c:2575 [inline]
RIP: 0010:ip_route_output_key_hash_rcu+0x73d/0x2770 net/ipv4/route.c:2802
Code: 0f 85 94 11 00 00 e8 d2 41 4e f8 4d 85 f6 74 51 e8 c8 41 4e f8 49 8d 7e 3a 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 01 38 d0 7c 09 84 d2 74 05 e8
RSP: 0018:ffffc90007047840 EFLAGS: 00010203
RAX: dffffc0000000000 RBX: ffffc90007047a10 RCX: ffffffff89404f43
RDX: 0000000000000008 RSI: ffffffff89403da8 RDI: 0000000000000044
RBP: ffff888029a10400 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000005 R12: 0000000000000001
R13: ffff888028d42e80 R14: 000000000000000a R15: ffff888011516000
FS: 0000000000000000(0000) GS:ffff88802c200000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f9169541d98 CR3: 000000005d19e000 CR4: 0000000000350ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
ip_route_output_key_hash+0x138/0x2e0 net/ipv4/route.c:2631
__ip_route_output_key include/net/route.h:140 [inline]
ip_route_output_flow+0x27/0x150 net/ipv4/route.c:2859
send4+0x5da/0xe20 drivers/net/wireguard/socket.c:61
wg_socket_send_skb_to_peer+0x196/0x220 drivers/net/wireguard/socket.c:175
wg_socket_send_buffer_to_peer+0x12b/0x190 drivers/net/wireguard/socket.c:200
wg_packet_send_handshake_initiation+0x227/0x360 drivers/net/wireguard/send.c:40
wg_packet_handshake_send_worker+0x1c/0x30 drivers/net/wireguard/send.c:51
process_one_work+0x958/0x1ad0 kernel/workqueue.c:3231
process_scheduled_works kernel/workqueue.c:3312 [inline]
worker_thread+0x6c8/0xf70 kernel/workqueue.c:3393
kthread+0x2c1/0x3a0 kernel/kthread.c:389
ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:rt_cache_valid net/ipv4/route.c:1550 [inline]
RIP: 0010:__mkroute_output net/ipv4/route.c:2575 [inline]
RIP: 0010:ip_route_output_key_hash_rcu+0x73d/0x2770 net/ipv4/route.c:2802
Code: 0f 85 94 11 00 00 e8 d2 41 4e f8 4d 85 f6 74 51 e8 c8 41 4e f8 49 8d 7e 3a 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 01 38 d0 7c 09 84 d2 74 05 e8
RSP: 0018:ffffc90007047840 EFLAGS: 00010203
RAX: dffffc0000000000 RBX: ffffc90007047a10 RCX: ffffffff89404f43
RDX: 0000000000000008 RSI: ffffffff89403da8 RDI: 0000000000000044
RBP: ffff888029a10400 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000005 R12: 0000000000000001
R13: ffff888028d42e80 R14: 000000000000000a R15: ffff888011516000
FS: 0000000000000000(0000) GS:ffff88802c200000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f9169541d98 CR3: 000000005d19e000 CR4: 0000000000350ef0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: 0f 85 94 11 00 00 jne 0x119a
6: e8 d2 41 4e f8 call 0xf84e41dd
b: 4d 85 f6 test %r14,%r14
e: 74 51 je 0x61
10: e8 c8 41 4e f8 call 0xf84e41dd
15: 49 8d 7e 3a lea 0x3a(%r14),%rdi
19: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
20: fc ff df
23: 48 89 fa mov %rdi,%rdx
26: 48 c1 ea 03 shr $0x3,%rdx
* 2a: 0f b6 14 02 movzbl (%rdx,%rax,1),%edx <-- trapping instruction
2e: 48 89 f8 mov %rdi,%rax
31: 83 e0 07 and $0x7,%eax
34: 83 c0 01 add $0x1,%eax
37: 38 d0 cmp %dl,%al
39: 7c 09 jl 0x44
3b: 84 d2 test %dl,%dl
3d: 74 05 je 0x44
3f: e8 .byte 0xe8