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: 7690 Comm: syz.6.391 Not tainted 6.12.0-rc6-syzkaller #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 29 b7 98 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 2b 68 f9 f8 48 8b 84 24 c8
RSP: 0018:ffffc90000006868 EFLAGS: 00010212
RAX: dffffc0000000000 RBX: 0000000000020048 RCX: ffffffff88f4b23f
RDX: 000000000000000e RSI: ffffffff88f4c317 RDI: 0000000000000070
RBP: ffffc90000006a10 R08: 0000000000000005 R09: 000000000000ffff
R10: 000000000000ffff R11: aaaa0aaaaaaaaaaa R12: ffff8880276b6e40
R13: 000000000001fffe R14: 000000000001fffe R15: 000000000000ffff
FS: 00007fb9346226c0(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020288000 CR3: 0000000025176000 CR4: 0000000000350ef0
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+0x7b5/0x1c70 net/ipv6/ip6_offload.c:152
skb_mac_gso_segment+0x2a9/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_established+0x93a/0x21c0 net/ipv4/tcp_input.c:6266
tcp_v6_do_rcv+0x83c/0x16e0 net/ipv6/tcp_ipv6.c:1641
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+0xba/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+0x216/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_splice_read+0x711/0xd40 net/ipv4/tcp.c:871
sock_splice_read+0xb1/0x110 net/socket.c:1113
do_splice_read fs/splice.c:985 [inline]
do_splice_read+0x285/0x370 fs/splice.c:959
splice_file_to_pipe+0x109/0x120 fs/splice.c:1295
do_splice+0x1174/0x1f60 fs/splice.c:1379
__do_splice+0x159/0x360 fs/splice.c:1436
__do_sys_splice fs/splice.c:1652 [inline]
__se_sys_splice fs/splice.c:1634 [inline]
__x64_sys_splice+0x1cd/0x270 fs/splice.c:1634
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:0x7fb93377e719
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:00007fb934622038 EFLAGS: 00000246 ORIG_RAX: 0000000000000113
RAX: ffffffffffffffda RBX: 00007fb933935f80 RCX: 00007fb93377e719
RDX: 0000000000000004 RSI: 0000000000000000 RDI: 0000000000000005
RBP: 00007fb9337f139e R08: 7fffffffffffffff R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007fb933935f80 R15: 00007ffc8d6ed5d8
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 29 b7 98 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 2b 68 f9 f8 48 8b 84 24 c8
RSP: 0018:ffffc90000006868 EFLAGS: 00010212
RAX: dffffc0000000000 RBX: 0000000000020048 RCX: ffffffff88f4b23f
RDX: 000000000000000e RSI: ffffffff88f4c317 RDI: 0000000000000070
RBP: ffffc90000006a10 R08: 0000000000000005 R09: 000000000000ffff
R10: 000000000000ffff R11: aaaa0aaaaaaaaaaa R12: ffff8880276b6e40
R13: 000000000001fffe R14: 000000000001fffe R15: 000000000000ffff
FS: 00007fb9346226c0(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020288000 CR3: 0000000025176000 CR4: 0000000000350ef0
----------------
Code disassembly (best guess), 1 bytes skipped:
0: 00 fe add %bh,%dh
2: e9 c2 ea ff ff jmp 0xffffeac9
7: e8 29 b7 98 f8 call 0xf898b735
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 2b 68 f9 f8 call 0xf8f96865
3a: 48 rex.W
3b: 8b .byte 0x8b
3c: 84 24 c8 test %ah,(%rax,%rcx,8)