================================================================== BUG: KASAN: slab-out-of-bounds in fl6_update_dst+0x2bb/0x2c0 net/ipv6/exthdrs.c:1356 Read of size 16 at addr ffff888098af7ee8 by task syz-executor.5/29564 CPU: 1 PID: 29564 Comm: syz-executor.5 Not tainted 5.7.0-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x188/0x20d lib/dump_stack.c:118 print_address_description.constprop.0.cold+0xd3/0x413 mm/kasan/report.c:383 __kasan_report mm/kasan/report.c:513 [inline] kasan_report.cold+0x1f/0x37 mm/kasan/report.c:530 fl6_update_dst+0x2bb/0x2c0 net/ipv6/exthdrs.c:1356 inet6_csk_route_socket+0x667/0xf00 net/ipv6/inet6_connection_sock.c:101 inet6_csk_xmit+0x110/0x610 net/ipv6/inet6_connection_sock.c:121 __tcp_transmit_skb+0x1a18/0x3770 net/ipv4/tcp_output.c:1238 tcp_transmit_skb net/ipv4/tcp_output.c:1254 [inline] tcp_write_xmit+0xf95/0x5be0 net/ipv4/tcp_output.c:2517 tcp_sendmsg_locked+0xa43/0x3210 net/ipv4/tcp.c:1391 tcp_sendmsg+0x2b/0x40 net/ipv4/tcp.c:1441 inet6_sendmsg+0x99/0xe0 net/ipv6/af_inet6.c:638 sock_sendmsg_nosec net/socket.c:652 [inline] sock_sendmsg+0xcf/0x120 net/socket.c:672 __sys_sendto+0x219/0x330 net/socket.c:1995 __do_sys_sendto net/socket.c:2007 [inline] __se_sys_sendto net/socket.c:2003 [inline] __x64_sys_sendto+0xdd/0x1b0 net/socket.c:2003 do_syscall_64+0xf6/0x7d0 arch/x86/entry/common.c:295 entry_SYSCALL_64_after_hwframe+0x49/0xb3 RIP: 0033:0x45ca69 Code: 0d b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 db b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007f364f945c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002c RAX: ffffffffffffffda RBX: 0000000000501240 RCX: 000000000045ca69 RDX: 00000000fffffdef RSI: 0000000020000200 RDI: 0000000000000004 RBP: 000000000078bf00 R08: 0000000000000000 R09: 00000000000001f4 R10: 0000000000040080 R11: 0000000000000246 R12: 00000000ffffffff R13: 0000000000000a0f R14: 00000000004ccea2 R15: 00007f364f9466d4 Allocated by task 29570: save_stack+0x1b/0x40 mm/kasan/common.c:48 set_track mm/kasan/common.c:56 [inline] __kasan_kmalloc mm/kasan/common.c:494 [inline] __kasan_kmalloc.constprop.0+0xbf/0xd0 mm/kasan/common.c:467 __do_kmalloc mm/slab.c:3656 [inline] __kmalloc+0x161/0x7a0 mm/slab.c:3665 kmalloc include/linux/slab.h:560 [inline] sock_kmalloc net/core/sock.c:2255 [inline] sock_kmalloc+0xb5/0x100 net/core/sock.c:2246 ipv6_renew_options+0x274/0x940 net/ipv6/exthdrs.c:1275 do_ipv6_setsockopt.isra.0+0x2db4/0x4330 net/ipv6/ipv6_sockglue.c:471 ipv6_setsockopt+0xfb/0x180 net/ipv6/ipv6_sockglue.c:900 tcp_setsockopt net/ipv4/tcp.c:3278 [inline] tcp_setsockopt+0x86/0xd0 net/ipv4/tcp.c:3272 __sys_setsockopt+0x248/0x480 net/socket.c:2127 __do_sys_setsockopt net/socket.c:2143 [inline] __se_sys_setsockopt net/socket.c:2140 [inline] __x64_sys_setsockopt+0xba/0x150 net/socket.c:2140 do_syscall_64+0xf6/0x7d0 arch/x86/entry/common.c:295 entry_SYSCALL_64_after_hwframe+0x49/0xb3 Freed by task 29124: save_stack+0x1b/0x40 mm/kasan/common.c:48 set_track mm/kasan/common.c:56 [inline] kasan_set_free_info mm/kasan/common.c:316 [inline] __kasan_slab_free+0xf7/0x140 mm/kasan/common.c:455 __cache_free mm/slab.c:3426 [inline] kfree+0x109/0x2b0 mm/slab.c:3757 iter_file_splice_write+0x5a3/0xb10 fs/splice.c:778 do_splice_from+0x86/0x110 fs/splice.c:846 direct_splice_actor+0xa3/0x110 fs/splice.c:1016 splice_direct_to_actor+0x38c/0x980 fs/splice.c:971 do_splice_direct+0x1b4/0x280 fs/splice.c:1059 do_sendfile+0x555/0xc50 fs/read_write.c:1521 __do_sys_sendfile64 fs/read_write.c:1576 [inline] __se_sys_sendfile64 fs/read_write.c:1568 [inline] __x64_sys_sendfile64+0x149/0x210 fs/read_write.c:1568 do_syscall_64+0xf6/0x7d0 arch/x86/entry/common.c:295 entry_SYSCALL_64_after_hwframe+0x49/0xb3 The buggy address belongs to the object at ffff888098af7e00 which belongs to the cache kmalloc-256 of size 256 The buggy address is located 232 bytes inside of 256-byte region [ffff888098af7e00, ffff888098af7f00) The buggy address belongs to the page: page:ffffea000262bdc0 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 flags: 0xfffe0000000200(slab) raw: 00fffe0000000200 ffffea00015063c8 ffffea000263bd88 ffff8880aa0008c0 raw: 0000000000000000 ffff888098af7000 0000000100000008 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff888098af7d80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff888098af7e00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffff888098af7e80: 00 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc ^ ffff888098af7f00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff888098af7f80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ==================================================================