================================================================== BUG: KASAN: use-after-free in ip6_dst_idev include/net/ip6_fib.h:141 [inline] BUG: KASAN: use-after-free in ip6_xmit+0x1838/0x1b80 net/ipv6/ip6_output.c:254 Read of size 8 at addr ffff8801cacbec98 by task syz-executor1/15585 CPU: 0 PID: 15585 Comm: syz-executor1 Not tainted 4.9.124-g09eb2ba #83 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 SELinux: unrecognized netlink message: protocol=6 nlmsg_type=38995 sclass=netlink_xfrm_socket pig=15594 comm=syz-executor7 ffff8801d74df540 ffffffff81eb95e9 ffffea00072b2f80 ffff8801cacbec98 0000000000000000 ffff8801cacbec98 0000000000000040 ffff8801d74df578 ffffffff8156c35e ffff8801cacbec98 0000000000000008 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_load8_noabort+0x14/0x20 mm/kasan/report.c:433 [] ip6_dst_idev include/net/ip6_fib.h:141 [inline] [] ip6_xmit+0x1838/0x1b80 net/ipv6/ip6_output.c:254 [] inet6_csk_xmit+0x27c/0x4d0 net/ipv6/inet6_connection_sock.c:178 [] l2tp_xmit_core net/l2tp/l2tp_core.c:1178 [inline] [] l2tp_xmit_skb+0xc45/0xf30 net/l2tp/l2tp_core.c:1273 [] pppol2tp_sendmsg+0x4e0/0x790 net/l2tp/l2tp_ppp.c:339 [] sock_sendmsg_nosec net/socket.c:648 [inline] [] sock_sendmsg+0xcc/0x110 net/socket.c:658 [] ___sys_sendmsg+0x47a/0x840 net/socket.c:1982 [] __sys_sendmmsg+0x161/0x3d0 net/socket.c:2072 [] SYSC_sendmmsg net/socket.c:2103 [inline] [] SyS_sendmmsg+0x35/0x60 net/socket.c:2098 [] do_syscall_64+0x1a6/0x490 arch/x86/entry/common.c:282 [] entry_SYSCALL_64_after_swapgs+0x5d/0xdb Allocated by task 15296: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:505 set_track mm/kasan/kasan.c:517 [inline] kasan_kmalloc+0xc7/0xe0 mm/kasan/kasan.c:609 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+0xbe/0x290 mm/slub.c:2728 dst_alloc+0xb5/0x1a0 net/core/dst.c:210 ipv4_blackhole_route+0x30/0x700 net/ipv4/route.c:2407 make_blackhole net/xfrm/xfrm_policy.c:2186 [inline] xfrm_lookup_route+0xf4/0x1b0 net/xfrm/xfrm_policy.c:2356 ip_route_output_flow+0x90/0xa0 net/ipv4/route.c:2448 ip_route_output_ports include/net/route.h:160 [inline] igmpv3_newpack+0x2a2/0xea0 net/ipv4/igmp.c:365 add_grhead.isra.30+0x235/0x300 net/ipv4/igmp.c:436 add_grec+0x717/0x10a0 net/ipv4/igmp.c:569 igmpv3_send_cr net/ipv4/igmp.c:699 [inline] igmp_ifc_timer_expire+0x3de/0x8a0 net/ipv4/igmp.c:796 call_timer_fn+0x163/0x6e0 kernel/time/timer.c:1319 expire_timers kernel/time/timer.c:1359 [inline] __run_timers kernel/time/timer.c:1658 [inline] run_timer_softirq+0x1047/0x1590 kernel/time/timer.c:1684 __do_softirq+0x210/0x940 kernel/softirq.c:288 Freed by task 9821: save_stack_trace+0x16/0x20 arch/x86/kernel/stacktrace.c:57 save_stack+0x43/0xd0 mm/kasan/kasan.c:505 set_track mm/kasan/kasan.c:517 [inline] kasan_slab_free+0x72/0xc0 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 dst_destroy+0x200/0x360 net/core/dst.c:270 dst_gc_task+0x1a9/0x510 net/core/dst.c:89 process_one_work+0x7e1/0x1500 kernel/workqueue.c:2092 worker_thread+0xd6/0x10a0 kernel/workqueue.c:2226 kthread+0x26d/0x300 kernel/kthread.c:211 ret_from_fork+0x5c/0x70 arch/x86/entry/entry_64.S:373 The buggy address belongs to the object at ffff8801cacbec80 which belongs to the cache ip_dst_cache of size 216 The buggy address is located 24 bytes inside of 216-byte region [ffff8801cacbec80, ffff8801cacbed58) The buggy address belongs to the page: page:ffffea00072b2f80 count:1 mapcount:0 mapping: (null) index:0x0 flags: 0x8000000000000080(slab) page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8801cacbeb80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff8801cacbec00: 00 00 00 fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff8801cacbec80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff8801cacbed00: fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc fc ffff8801cacbed80: fc fc fc fc fc fc fc fc fb fb fb fb fb fb fb fb ==================================================================