Oops: general protection fault, probably for non-canonical address 0xdffffc000000000e: 0000 [#1] PREEMPT SMP KASAN NOPTI
KASAN: null-ptr-deref in range [0x0000000000000070-0x0000000000000077]
CPU: 0 UID: 0 PID: 21587 Comm: syz.0.4013 Not tainted 6.12.0-rc6-syzkaller-00077-g2e1b3cc9d7f7 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
RIP: 0010:skb_segment+0x19d4/0x4310 net/core/skbuff.c:4802
Code: 00 00 fe e9 c2 ea ff ff e8 39 c0 96 f8 48 8b 84 24 c8 00 00 00 48 8d 78 70 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 09 3c 03 7f 05 e8 eb 49 f8 f8 48 8b 84 24 c8
RSP: 0018:ffffc900000067b8 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: 0000000000020048 RCX: ffffffff88f6aa3f
RDX: 000000000000000e RSI: ffffffff88f6bb17 RDI: 0000000000000070
RBP: ffffc90000006960 R08: 0000000000000005 R09: 000000000000ffff
R10: 000000000000ffff R11: aaaa0aaaaaaaaaaa R12: ffff88802915ba40
R13: 000000000001fffe R14: 000000000001fffe R15: 000000000000ffff
FS: 00007f3b2a9466c0(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000002003e000 CR3: 000000002a622000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
tcp_gso_segment+0x3ca/0x1940 net/ipv4/tcp_offload.c:176
tcp6_gso_segment net/ipv6/tcpv6_offload.c:184 [inline]
tcp6_gso_segment+0x207/0x1570 net/ipv6/tcpv6_offload.c:151
ipv6_gso_segment+0x7b2/0x1c70 net/ipv6/ip6_offload.c:152
skb_mac_gso_segment+0x2a6/0x650 net/core/gso.c:53
__skb_gso_segment+0x333/0x710 net/core/gso.c:124
skb_gso_segment include/net/gso.h:83 [inline]
validate_xmit_skb+0x33b/0xef0 net/core/dev.c:3673
__dev_queue_xmit+0x6f7/0x4350 net/core/dev.c:4424
dev_queue_xmit include/linux/netdevice.h:3094 [inline]
neigh_hh_output include/net/neighbour.h:526 [inline]
neigh_output include/net/neighbour.h:540 [inline]
ip6_finish_output2+0x11e9/0x1a50 net/ipv6/ip6_output.c:141
__ip6_finish_output net/ipv6/ip6_output.c:215 [inline]
ip6_finish_output+0x3f9/0x1300 net/ipv6/ip6_output.c:226
NF_HOOK_COND include/linux/netfilter.h:303 [inline]
ip6_output+0x1f8/0x540 net/ipv6/ip6_output.c:247
dst_output include/net/dst.h:450 [inline]
NF_HOOK include/linux/netfilter.h:314 [inline]
NF_HOOK include/linux/netfilter.h:308 [inline]
ip6_xmit+0x1215/0x2100 net/ipv6/ip6_output.c:366
inet6_csk_xmit+0x3ce/0x740 net/ipv6/inet6_connection_sock.c:135
__tcp_transmit_skb+0x1adb/0x3dc0 net/ipv4/tcp_output.c:1466
tcp_transmit_skb net/ipv4/tcp_output.c:1484 [inline]
tcp_write_xmit+0x12b1/0x8560 net/ipv4/tcp_output.c:2827
__tcp_push_pending_frames+0xaf/0x390 net/ipv4/tcp_output.c:3012
tcp_push_pending_frames include/net/tcp.h:2107 [inline]
tcp_data_snd_check net/ipv4/tcp_input.c:5741 [inline]
tcp_rcv_state_process+0xf3e/0x4f30 net/ipv4/tcp_input.c:6979
tcp_v6_do_rcv+0x435/0x16e0 net/ipv6/tcp_ipv6.c:1666
tcp_v6_rcv+0x30b3/0x3fd0 net/ipv6/tcp_ipv6.c:1913
ip6_protocol_deliver_rcu+0x180/0x1510 net/ipv6/ip6_input.c:436
ip6_input_finish+0x14f/0x2f0 net/ipv6/ip6_input.c:481
NF_HOOK include/linux/netfilter.h:314 [inline]
NF_HOOK include/linux/netfilter.h:308 [inline]
ip6_input+0xa1/0xd0 net/ipv6/ip6_input.c:490
dst_input include/net/dst.h:460 [inline]
ip6_rcv_finish net/ipv6/ip6_input.c:79 [inline]
NF_HOOK include/linux/netfilter.h:314 [inline]
NF_HOOK include/linux/netfilter.h:308 [inline]
ipv6_rcv+0x265/0x680 net/ipv6/ip6_input.c:309
__netif_receive_skb_one_core+0x12e/0x1e0 net/core/dev.c:5670
__netif_receive_skb+0x1d/0x160 net/core/dev.c:5783
process_backlog+0x443/0x15f0 net/core/dev.c:6115
__napi_poll.constprop.0+0xb7/0x550 net/core/dev.c:6779
napi_poll net/core/dev.c:6848 [inline]
net_rx_action+0xa92/0x1010 net/core/dev.c:6970
handle_softirqs+0x213/0x8f0 kernel/softirq.c:554
do_softirq kernel/softirq.c:455 [inline]
do_softirq+0xb2/0xf0 kernel/softirq.c:442
__local_bh_enable_ip+0x100/0x120 kernel/softirq.c:382
tcp_recvmsg+0x139/0x680 net/ipv4/tcp.c:2852
inet6_recvmsg+0x12b/0x6a0 net/ipv6/af_inet6.c:680
sock_recvmsg_nosec net/socket.c:1051 [inline]
sock_recvmsg+0xfe/0x250 net/socket.c:1073
____sys_recvmsg+0x219/0x6b0 net/socket.c:2826
___sys_recvmsg+0x115/0x1a0 net/socket.c:2868
__sys_recvmsg+0x114/0x1e0 net/socket.c:2898
do_syscall_x64 arch/x86/entry/common.c:52 [inline]
do_syscall_64+0xcd/0x250 arch/x86/entry/common.c:83
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f3b29b7e719
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f3b2a946038 EFLAGS: 00000246 ORIG_RAX: 000000000000002f
RAX: ffffffffffffffda RBX: 00007f3b29d35f80 RCX: 00007f3b29b7e719
RDX: 0000000040000110 RSI: 00000000200008c0 RDI: 0000000000000003
RBP: 00007f3b29bf139e R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007f3b29d35f80 R15: 00007ffc6988b6d8
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:skb_segment+0x19d4/0x4310 net/core/skbuff.c:4802
Code: 00 00 fe e9 c2 ea ff ff e8 39 c0 96 f8 48 8b 84 24 c8 00 00 00 48 8d 78 70 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 09 3c 03 7f 05 e8 eb 49 f8 f8 48 8b 84 24 c8
RSP: 0018:ffffc900000067b8 EFLAGS: 00010202
RAX: dffffc0000000000 RBX: 0000000000020048 RCX: ffffffff88f6aa3f
RDX: 000000000000000e RSI: ffffffff88f6bb17 RDI: 0000000000000070
RBP: ffffc90000006960 R08: 0000000000000005 R09: 000000000000ffff
R10: 000000000000ffff R11: aaaa0aaaaaaaaaaa R12: ffff88802915ba40
R13: 000000000001fffe R14: 000000000001fffe R15: 000000000000ffff
FS: 00007f3b2a9466c0(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000000002003e000 CR3: 000000002a622000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess), 1 bytes skipped:
0: 00 fe add %bh,%dh
2: e9 c2 ea ff ff jmp 0xffffeac9
7: e8 39 c0 96 f8 call 0xf896c045
c: 48 8b 84 24 c8 00 00 mov 0xc8(%rsp),%rax
13: 00
14: 48 8d 78 70 lea 0x70(%rax),%rdi
18: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax
1f: fc ff df
22: 48 89 fa mov %rdi,%rdx
25: 48 c1 ea 03 shr $0x3,%rdx
* 29: 0f b6 04 02 movzbl (%rdx,%rax,1),%eax <-- trapping instruction
2d: 84 c0 test %al,%al
2f: 74 09 je 0x3a
31: 3c 03 cmp $0x3,%al
33: 7f 05 jg 0x3a
35: e8 eb 49 f8 f8 call 0xf8f84a25
3a: 48 rex.W
3b: 8b .byte 0x8b
3c: 84 24 c8 test %ah,(%rax,%rcx,8)