================================================================== BUG: KASAN: use-after-free in tcp_connect+0x2606/0x2fa0 net/ipv4/tcp_output.c:3413 Read of size 4 at addr ffff8801d1f971a8 by task syz-executor.1/13525 CPU: 1 PID: 13525 Comm: syz-executor.1 Not tainted 4.9.141+ #1 ffff8801d3807950 ffffffff81b42e79 ffffea000747e580 ffff8801d1f971a8 0000000000000000 ffff8801d1f971a8 ffff8801d0d29ba0 ffff8801d3807988 ffffffff815009b8 ffff8801d1f971a8 0000000000000004 0000000000000000 Call Trace: [] __dump_stack lib/dump_stack.c:15 [inline] [] dump_stack+0xc1/0x128 lib/dump_stack.c:51 [] print_address_description+0x6c/0x234 mm/kasan/report.c:256 [] kasan_report_error mm/kasan/report.c:355 [inline] [] kasan_report.cold.6+0x242/0x2fe mm/kasan/report.c:412 [] __asan_report_load4_noabort+0x14/0x20 mm/kasan/report.c:432 [] tcp_connect+0x2606/0x2fa0 net/ipv4/tcp_output.c:3413 [] tcp_v4_connect+0x19ec/0x1c00 net/ipv4/tcp_ipv4.c:250 [] __inet_stream_connect+0x6e0/0xbf0 net/ipv4/af_inet.c:627 [] inet_stream_connect+0x55/0xa0 net/ipv4/af_inet.c:691 [] SYSC_connect net/socket.c:1575 [inline] [] SyS_connect+0x1b8/0x310 net/socket.c:1556 [] do_syscall_64+0x19f/0x550 arch/x86/entry/common.c:285 [] entry_SYSCALL_64_after_swapgs+0x5d/0xdb Allocated by task 13505: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack mm/kasan/kasan.c:505 [inline] set_track mm/kasan/kasan.c:517 [inline] kasan_kmalloc.part.1+0x62/0xf0 mm/kasan/kasan.c:609 kasan_kmalloc+0xaf/0xc0 mm/kasan/kasan.c:594 kasan_slab_alloc+0x12/0x20 mm/kasan/kasan.c:547 slab_post_alloc_hook mm/slab.h:417 [inline] slab_alloc_node mm/slub.c:2715 [inline] slab_alloc mm/slub.c:2723 [inline] kmem_cache_alloc+0xd5/0x2b0 mm/slub.c:2728 kmem_cache_alloc_node include/linux/slab.h:364 [inline] __alloc_skb+0xe6/0x5b0 net/core/skbuff.c:219 alloc_skb_fclone include/linux/skbuff.h:966 [inline] sk_stream_alloc_skb+0xa3/0x5d0 net/ipv4/tcp.c:828 do_tcp_sendpages net/ipv4/tcp.c:930 [inline] tcp_sendpage+0x94d/0x1910 net/ipv4/tcp.c:1033 inet_sendpage+0x221/0x510 net/ipv4/af_inet.c:787 kernel_sendpage+0x93/0xf0 net/socket.c:3334 sock_sendpage+0x8c/0xc0 net/socket.c:802 pipe_to_sendpage+0x266/0x330 fs/splice.c:470 splice_from_pipe_feed fs/splice.c:521 [inline] __splice_from_pipe+0x316/0x710 fs/splice.c:645 splice_from_pipe+0xf9/0x170 fs/splice.c:680 generic_splice_sendpage+0x3c/0x50 fs/splice.c:851 do_splice_from fs/splice.c:870 [inline] do_splice fs/splice.c:1166 [inline] SYSC_splice fs/splice.c:1416 [inline] SyS_splice+0xe4d/0x14d0 fs/splice.c:1399 do_syscall_64+0x19f/0x550 arch/x86/entry/common.c:285 entry_SYSCALL_64_after_swapgs+0x5d/0xdb Freed by task 13525: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack mm/kasan/kasan.c:505 [inline] set_track mm/kasan/kasan.c:517 [inline] kasan_slab_free+0xac/0x190 mm/kasan/kasan.c:582 slab_free_hook mm/slub.c:1355 [inline] slab_free_freelist_hook mm/slub.c:1377 [inline] slab_free mm/slub.c:2958 [inline] kmem_cache_free+0xbe/0x310 mm/slub.c:2980 kfree_skbmem+0x7c/0x100 net/core/skbuff.c:644 __kfree_skb+0x1d/0x20 net/core/skbuff.c:685 sk_wmem_free_skb include/net/sock.h:1358 [inline] tcp_write_queue_purge include/net/tcp.h:1530 [inline] tcp_connect_init net/ipv4/tcp_output.c:3253 [inline] tcp_connect+0xa74/0x2fa0 net/ipv4/tcp_output.c:3384 tcp_v4_connect+0x19ec/0x1c00 net/ipv4/tcp_ipv4.c:250 __inet_stream_connect+0x6e0/0xbf0 net/ipv4/af_inet.c:627 inet_stream_connect+0x55/0xa0 net/ipv4/af_inet.c:691 SYSC_connect net/socket.c:1575 [inline] SyS_connect+0x1b8/0x310 net/socket.c:1556 do_syscall_64+0x19f/0x550 arch/x86/entry/common.c:285 entry_SYSCALL_64_after_swapgs+0x5d/0xdb The buggy address belongs to the object at ffff8801d1f97180 which belongs to the cache skbuff_fclone_cache of size 456 The buggy address is located 40 bytes inside of 456-byte region [ffff8801d1f97180, ffff8801d1f97348) The buggy address belongs to the page: page:ffffea000747e580 count:1 mapcount:0 mapping: (null) index:0xffff8801d1f97b80 compound_mapcount: 0 flags: 0x4000000000004080(slab|head) page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8801d1f97080: fb fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc ffff8801d1f97100: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff8801d1f97180: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff8801d1f97200: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff8801d1f97280: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================