================================================================== BUG: KASAN: invalid-free in skb_kfree_head net/core/skbuff.c:857 [inline] BUG: KASAN: invalid-free in skb_free_head+0xa0/0x190 net/core/skbuff.c:872 Free of addr ffff000131867000 by task syz-executor.4/13435 CPU: 1 PID: 13435 Comm: syz-executor.4 Not tainted 6.3.0-rc1-syzkaller-gfe15c26ee26e #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/02/2023 Call trace: dump_backtrace+0x1c8/0x1f4 arch/arm64/kernel/stacktrace.c:158 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:165 __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xd0/0x124 lib/dump_stack.c:106 print_address_description mm/kasan/report.c:319 [inline] print_report+0x174/0x514 mm/kasan/report.c:430 kasan_report_invalid_free+0xc4/0x114 mm/kasan/report.c:501 ____kasan_slab_free+0x1a8/0x1c0 mm/kasan/common.c:216 __kasan_slab_free+0x18/0x28 mm/kasan/common.c:244 kasan_slab_free include/linux/kasan.h:162 [inline] slab_free_hook mm/slub.c:1781 [inline] slab_free_freelist_hook mm/slub.c:1807 [inline] slab_free mm/slub.c:3787 [inline] kmem_cache_free+0x328/0x5f8 mm/slub.c:3809 skb_kfree_head net/core/skbuff.c:857 [inline] skb_free_head+0xa0/0x190 net/core/skbuff.c:872 skb_release_data+0x428/0x5ac net/core/skbuff.c:901 skb_release_all net/core/skbuff.c:966 [inline] __kfree_skb+0x58/0x78 net/core/skbuff.c:980 tcp_wmem_free_skb include/net/tcp.h:302 [inline] tcp_rtx_queue_unlink_and_free+0x2e8/0x4a8 include/net/tcp.h:1938 tcp_shifted_skb+0x64c/0xac0 net/ipv4/tcp_input.c:1505 tcp_shift_skb_data net/ipv4/tcp_input.c:1648 [inline] tcp_sacktag_walk+0xf4c/0x1c6c net/ipv4/tcp_input.c:1713 tcp_sacktag_write_queue+0x1b4c/0x32f4 net/ipv4/tcp_input.c:1974 tcp_ack+0x1188/0x5688 net/ipv4/tcp_input.c:3847 tcp_rcv_established+0xb34/0x2350 net/ipv4/tcp_input.c:6006 tcp_v4_do_rcv+0x390/0xb08 net/ipv4/tcp_ipv4.c:1721 sk_backlog_rcv include/net/sock.h:1113 [inline] __release_sock+0x1a8/0x408 net/core/sock.c:2921 release_sock+0x68/0x1cc net/core/sock.c:3488 sk_wait_data+0x1d4/0x4c0 net/core/sock.c:2964 tcp_recvmsg_locked+0xa78/0x1e10 net/ipv4/tcp.c:2566 tcp_recvmsg+0x1dc/0x714 net/ipv4/tcp.c:2681 inet_recvmsg+0x124/0x210 net/ipv4/af_inet.c:859 sock_recvmsg_nosec net/socket.c:1015 [inline] sock_recvmsg net/socket.c:1036 [inline] ____sys_recvmsg+0x230/0x6e8 net/socket.c:2723 ___sys_recvmsg net/socket.c:2765 [inline] __sys_recvmsg+0x27c/0x350 net/socket.c:2795 __do_sys_recvmsg net/socket.c:2805 [inline] __se_sys_recvmsg net/socket.c:2802 [inline] __arm64_sys_recvmsg+0x80/0x94 net/socket.c:2802 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] invoke_syscall+0x98/0x2c0 arch/arm64/kernel/syscall.c:52 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142 do_el0_svc+0x64/0x198 arch/arm64/kernel/syscall.c:193 el0_svc+0x58/0x168 arch/arm64/kernel/entry-common.c:637 el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:591 Allocated by task 13435: kasan_save_stack mm/kasan/common.c:45 [inline] kasan_set_track+0x4c/0x7c mm/kasan/common.c:52 kasan_save_alloc_info+0x24/0x30 mm/kasan/generic.c:510 ____kasan_kmalloc mm/kasan/common.c:374 [inline] __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:383 kasan_kmalloc include/linux/kasan.h:196 [inline] __do_kmalloc_node mm/slab_common.c:967 [inline] __kmalloc_node_track_caller+0xd0/0x1c0 mm/slab_common.c:987 kmalloc_reserve+0x148/0x23c net/core/skbuff.c:539 pskb_expand_head+0x194/0x1060 net/core/skbuff.c:1995 __skb_unclone_keeptruesize net/core/skbuff.c:2094 [inline] skb_unclone_keeptruesize include/linux/skbuff.h:1910 [inline] skb_prepare_for_shift net/core/skbuff.c:3804 [inline] skb_shift+0x5cc/0x1710 net/core/skbuff.c:3877 tcp_skb_shift net/ipv4/tcp_input.c:1538 [inline] tcp_shift_skb_data net/ipv4/tcp_input.c:1646 [inline] tcp_sacktag_walk+0xf14/0x1c6c net/ipv4/tcp_input.c:1713 tcp_sacktag_write_queue+0x1b4c/0x32f4 net/ipv4/tcp_input.c:1974 tcp_ack+0x1188/0x5688 net/ipv4/tcp_input.c:3847 tcp_rcv_established+0xb34/0x2350 net/ipv4/tcp_input.c:6006 tcp_v4_do_rcv+0x390/0xb08 net/ipv4/tcp_ipv4.c:1721 sk_backlog_rcv include/net/sock.h:1113 [inline] __release_sock+0x1a8/0x408 net/core/sock.c:2921 release_sock+0x68/0x1cc net/core/sock.c:3488 sk_wait_data+0x1d4/0x4c0 net/core/sock.c:2964 tcp_recvmsg_locked+0xa78/0x1e10 net/ipv4/tcp.c:2566 tcp_recvmsg+0x1dc/0x714 net/ipv4/tcp.c:2681 inet_recvmsg+0x124/0x210 net/ipv4/af_inet.c:859 sock_recvmsg_nosec net/socket.c:1015 [inline] sock_recvmsg net/socket.c:1036 [inline] ____sys_recvmsg+0x230/0x6e8 net/socket.c:2723 ___sys_recvmsg net/socket.c:2765 [inline] __sys_recvmsg+0x27c/0x350 net/socket.c:2795 __do_sys_recvmsg net/socket.c:2805 [inline] __se_sys_recvmsg net/socket.c:2802 [inline] __arm64_sys_recvmsg+0x80/0x94 net/socket.c:2802 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] invoke_syscall+0x98/0x2c0 arch/arm64/kernel/syscall.c:52 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142 do_el0_svc+0x64/0x198 arch/arm64/kernel/syscall.c:193 el0_svc+0x58/0x168 arch/arm64/kernel/entry-common.c:637 el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:591 Last potentially related work creation: kasan_save_stack+0x40/0x6c mm/kasan/common.c:45 __kasan_record_aux_stack+0xcc/0xe8 mm/kasan/generic.c:491 kasan_record_aux_stack_noalloc+0x14/0x20 mm/kasan/generic.c:501 kvfree_call_rcu+0xa8/0x688 kernel/rcu/tree.c:3316 neigh_destroy+0x474/0x6b4 net/core/neighbour.c:941 neigh_release include/net/neighbour.h:449 [inline] neigh_cleanup_and_release+0x240/0x5b4 net/core/neighbour.c:103 neigh_periodic_work+0x488/0xae0 net/core/neighbour.c:1025 process_one_work+0x868/0x16f4 kernel/workqueue.c:2390 worker_thread+0x8e0/0xfe8 kernel/workqueue.c:2537 kthread+0x24c/0x2d4 kernel/kthread.c:376 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:870 Second to last potentially related work creation: kasan_save_stack+0x40/0x6c mm/kasan/common.c:45 __kasan_record_aux_stack+0xcc/0xe8 mm/kasan/generic.c:491 kasan_record_aux_stack_noalloc+0x14/0x20 mm/kasan/generic.c:501 kvfree_call_rcu+0xa8/0x688 kernel/rcu/tree.c:3316 neigh_destroy+0x474/0x6b4 net/core/neighbour.c:941 neigh_release include/net/neighbour.h:449 [inline] neigh_cleanup_and_release+0x240/0x5b4 net/core/neighbour.c:103 neigh_del net/core/neighbour.c:225 [inline] neigh_remove_one+0x320/0x428 net/core/neighbour.c:246 neigh_forced_gc net/core/neighbour.c:276 [inline] neigh_alloc net/core/neighbour.c:476 [inline] ___neigh_create+0x498/0x277c net/core/neighbour.c:671 __neigh_create+0x44/0x58 net/core/neighbour.c:760 ip6_finish_output2+0x18bc/0x1a84 net/ipv6/ip6_output.c:125 __ip6_finish_output net/ipv6/ip6_output.c:195 [inline] ip6_finish_output+0x538/0x8c8 net/ipv6/ip6_output.c:206 NF_HOOK_COND include/linux/netfilter.h:291 [inline] ip6_output+0x270/0x594 net/ipv6/ip6_output.c:227 dst_output include/net/dst.h:444 [inline] NF_HOOK include/linux/netfilter.h:302 [inline] ndisc_send_skb+0xc30/0x1790 net/ipv6/ndisc.c:508 ndisc_send_rs+0x47c/0x5d4 net/ipv6/ndisc.c:718 addrconf_rs_timer+0x300/0x58c net/ipv6/addrconf.c:3936 call_timer_fn+0x270/0xcd4 kernel/time/timer.c:1700 expire_timers kernel/time/timer.c:1751 [inline] __run_timers+0x55c/0x734 kernel/time/timer.c:2022 run_timer_softirq+0x7c/0x114 kernel/time/timer.c:2035 __do_softirq+0x378/0xfbc kernel/softirq.c:571 The buggy address belongs to the object at ffff000131867000 which belongs to the cache kmalloc-1k of size 1024 The buggy address is located 0 bytes inside of 1024-byte region [ffff000131867000, ffff000131867400) The buggy address belongs to the physical page: page:000000001ce04468 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x171860 head:000000001ce04468 order:3 entire_mapcount:0 nr_pages_mapped:0 pincount:0 ksm flags: 0x5ffc00000010200(slab|head|node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000010200 ffff0000c0002780 fffffc00032ab400 dead000000000003 raw: 0000000000000000 0000000080100010 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff000131866f00: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff000131866f80: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff000131867000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^ ffff000131867080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff000131867100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ==================================================================