general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 1 PID: 7870 Comm: kworker/1:3 Not tainted 6.1.118-syzkaller-00025-gef4fb40b87a9 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Workqueue: wg-crypt-wg0 wg_packet_tx_worker
RIP: 0010:dev_map_generic_redirect+0x90/0x7d0 kernel/bpf/devmap.c:668
Code: f1 f1 00 f2 f2 f2 4b 89 04 26 43 c7 44 26 0f f3 f3 f3 f3 43 c6 44 26 13 f3 e8 1c e6 dd ff 48 89 d8 48 c1 e8 03 48 89 44 24 48 <42> 80 3c 20 00 74 08 48 89 df e8 01 5c 25 00 48 89 5c 24 18 4c 8b
RSP: 0018:ffffc900001b0660 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff8881187a3cc0
RDX: 0000000000000100 RSI: ffff88811598aa00 RDI: 0000000000000000
RBP: ffffc900001b07b0 R08: ffffffff8414d76d R09: ffffffff8414d68b
R10: 0000000000000004 R11: ffff8881187a3cc0 R12: dffffc0000000000
R13: ffff88811598aa00 R14: 1ffff920000360d8 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020bcc030 CR3: 0000000141f46000 CR4: 00000000003526a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
xdp_do_generic_redirect_map net/core/filter.c:4392 [inline]
xdp_do_generic_redirect+0x42e/0xb40 net/core/filter.c:4451
do_xdp_generic+0x53e/0x800 net/core/dev.c:4966
__netif_receive_skb_core+0x19ae/0x43d0 net/core/dev.c:5373
__netif_receive_skb_one_core net/core/dev.c:5550 [inline]
__netif_receive_skb+0x11c/0x530 net/core/dev.c:5666
process_backlog+0x32c/0x630 net/core/dev.c:5994
__napi_poll+0xbe/0x5c0 net/core/dev.c:6561
napi_poll net/core/dev.c:6628 [inline]
net_rx_action+0x595/0xdd0 net/core/dev.c:6742
handle_softirqs+0x1db/0x650 kernel/softirq.c:617
__do_softirq+0xb/0xd kernel/softirq.c:655
do_softirq+0xf6/0x150 kernel/softirq.c:499
__local_bh_enable_ip+0x75/0x80 kernel/softirq.c:423
__raw_read_unlock_bh include/linux/rwlock_api_smp.h:257 [inline]
_raw_read_unlock_bh+0x29/0x30 kernel/locking/spinlock.c:284
wg_socket_send_skb_to_peer+0x178/0x1d0 drivers/net/wireguard/socket.c:184
wg_packet_create_data_done drivers/net/wireguard/send.c:251 [inline]
wg_packet_tx_worker+0x1d7/0x520 drivers/net/wireguard/send.c:276
process_one_work+0x73d/0xcb0 kernel/workqueue.c:2299
worker_thread+0xa60/0x1260 kernel/workqueue.c:2446
kthread+0x26d/0x300 kernel/kthread.c:386
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:dev_map_generic_redirect+0x90/0x7d0 kernel/bpf/devmap.c:668
Code: f1 f1 00 f2 f2 f2 4b 89 04 26 43 c7 44 26 0f f3 f3 f3 f3 43 c6 44 26 13 f3 e8 1c e6 dd ff 48 89 d8 48 c1 e8 03 48 89 44 24 48 <42> 80 3c 20 00 74 08 48 89 df e8 01 5c 25 00 48 89 5c 24 18 4c 8b
RSP: 0018:ffffc900001b0660 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffff8881187a3cc0
RDX: 0000000000000100 RSI: ffff88811598aa00 RDI: 0000000000000000
RBP: ffffc900001b07b0 R08: ffffffff8414d76d R09: ffffffff8414d68b
R10: 0000000000000004 R11: ffff8881187a3cc0 R12: dffffc0000000000
R13: ffff88811598aa00 R14: 1ffff920000360d8 R15: dffffc0000000000
FS: 0000000000000000(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020bcc030 CR3: 0000000141f46000 CR4: 00000000003526a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: f1 int1
1: f1 int1
2: 00 f2 add %dh,%dl
4: f2 f2 4b 89 04 26 repnz repnz mov %rax,(%r14,%r12,1)
a: 43 c7 44 26 0f f3 f3 movl $0xf3f3f3f3,0xf(%r14,%r12,1)
11: f3 f3
13: 43 c6 44 26 13 f3 movb $0xf3,0x13(%r14,%r12,1)
19: e8 1c e6 dd ff call 0xffdde63a
1e: 48 89 d8 mov %rbx,%rax
21: 48 c1 e8 03 shr $0x3,%rax
25: 48 89 44 24 48 mov %rax,0x48(%rsp)
* 2a: 42 80 3c 20 00 cmpb $0x0,(%rax,%r12,1) <-- trapping instruction
2f: 74 08 je 0x39
31: 48 89 df mov %rbx,%rdi
34: e8 01 5c 25 00 call 0x255c3a
39: 48 89 5c 24 18 mov %rbx,0x18(%rsp)
3e: 4c rex.WR
3f: 8b .byte 0x8b