Oops: general protection fault, probably for non-canonical address 0xdffffc0000000083: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000418-0x000000000000041f] CPU: 0 UID: 0 PID: 7369 Comm: kworker/u8:14 Not tainted 6.16.0-rc2-syzkaller #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Workqueue: wg-kex-wg1 wg_packet_handshake_send_worker RIP: 0010:ip_ignore_linkdown include/linux/inetdevice.h:270 [inline] RIP: 0010:fib_lookup_good_nhc+0x85/0x3d0 net/ipv4/fib_trie.c:1408 Code: 4c 89 24 24 48 89 d8 48 c1 e8 03 42 80 3c 28 00 74 08 48 89 df e8 0b 76 30 f8 41 bc 18 04 00 00 4c 03 23 4c 89 e0 48 c1 e8 03 <42> 80 3c 28 00 74 08 4c 89 e7 e8 ec 75 30 f8 4d 8b 24 24 e8 d3 fa RSP: 0018:ffffc90003167390 EFLAGS: 00010212 RAX: 0000000000000083 RBX: ffff8880560d9520 RCX: 0000000000000000 RDX: ffff888025299e00 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffff8880560d9537 R08: 0000000000000000 R09: ffffffff89d476d6 R10: dffffc0000000000 R11: fffff5200062ced2 R12: 0000000000000418 R13: dffffc0000000000 R14: 0000000000000000 R15: 1ffff1100ac1b2a6 FS: 0000000000000000(0000) GS:ffff888125c51000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000020000000a000 CR3: 00000000203d3000 CR4: 0000000000350ef0 Call Trace: nexthop_get_nhc_lookup+0x1af/0x400 include/net/nexthop.h:437 fib_table_lookup+0xf26/0x16e0 net/ipv4/fib_trie.c:1584 fib_lookup+0x1c5/0x440 include/net/ip_fib.h:390 ip_route_output_key_hash_rcu+0x2fb/0x23a0 net/ipv4/route.c:2803 ip_route_output_key_hash+0x1b9/0x2e0 net/ipv4/route.c:2694 __ip_route_output_key include/net/route.h:169 [inline] ip_route_output_flow+0x2a/0x150 net/ipv4/route.c:2921 send4+0x445/0xe20 drivers/net/wireguard/socket.c:61 wg_socket_send_skb_to_peer+0xd1/0x1d0 drivers/net/wireguard/socket.c:175 wg_packet_send_handshake_initiation drivers/net/wireguard/send.c:40 [inline] wg_packet_handshake_send_worker+0x1db/0x320 drivers/net/wireguard/send.c:51 process_one_work kernel/workqueue.c:3238 [inline] process_scheduled_works+0xae1/0x17b0 kernel/workqueue.c:3321 worker_thread+0x8a0/0xda0 kernel/workqueue.c:3402 kthread+0x711/0x8a0 kernel/kthread.c:464 ret_from_fork+0x3fc/0x770 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:ip_ignore_linkdown include/linux/inetdevice.h:270 [inline] RIP: 0010:fib_lookup_good_nhc+0x85/0x3d0 net/ipv4/fib_trie.c:1408 Code: 4c 89 24 24 48 89 d8 48 c1 e8 03 42 80 3c 28 00 74 08 48 89 df e8 0b 76 30 f8 41 bc 18 04 00 00 4c 03 23 4c 89 e0 48 c1 e8 03 <42> 80 3c 28 00 74 08 4c 89 e7 e8 ec 75 30 f8 4d 8b 24 24 e8 d3 fa RSP: 0018:ffffc90003167390 EFLAGS: 00010212 RAX: 0000000000000083 RBX: ffff8880560d9520 RCX: 0000000000000000 RDX: ffff888025299e00 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffff8880560d9537 R08: 0000000000000000 R09: ffffffff89d476d6 R10: dffffc0000000000 R11: fffff5200062ced2 R12: 0000000000000418 R13: dffffc0000000000 R14: 0000000000000000 R15: 1ffff1100ac1b2a6 FS: 0000000000000000(0000) GS:ffff888125c51000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000020000000a000 CR3: 00000000203d3000 CR4: 0000000000350ef0 ---------------- Code disassembly (best guess): 0: 4c 89 24 24 mov %r12,(%rsp) 4: 48 89 d8 mov %rbx,%rax 7: 48 c1 e8 03 shr $0x3,%rax b: 42 80 3c 28 00 cmpb $0x0,(%rax,%r13,1) 10: 74 08 je 0x1a 12: 48 89 df mov %rbx,%rdi 15: e8 0b 76 30 f8 call 0xf8307625 1a: 41 bc 18 04 00 00 mov $0x418,%r12d 20: 4c 03 23 add (%rbx),%r12 23: 4c 89 e0 mov %r12,%rax 26: 48 c1 e8 03 shr $0x3,%rax * 2a: 42 80 3c 28 00 cmpb $0x0,(%rax,%r13,1) <-- trapping instruction 2f: 74 08 je 0x39 31: 4c 89 e7 mov %r12,%rdi 34: e8 ec 75 30 f8 call 0xf8307625 39: 4d 8b 24 24 mov (%r12),%r12 3d: e8 .byte 0xe8 3e: d3 fa sar %cl,%edx