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)