================================================================== BUG: KASAN: double-free or invalid-free in slab_free mm/slub.c:3210 [inline] BUG: KASAN: double-free or invalid-free in kfree+0xd5/0x320 mm/slub.c:4198 CPU: 0 PID: 29074 Comm: io_wqe_worker-0 Not tainted 5.10.100-syzkaller-00843-g86e6176a4240 #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_lvl+0x1e2/0x24b lib/dump_stack.c:118 print_address_description+0x8d/0x3d0 mm/kasan/report.c:233 kasan_report_invalid_free+0x58/0x130 mm/kasan/report.c:358 ____kasan_slab_free+0x14b/0x170 mm/kasan/common.c:362 __kasan_slab_free+0x11/0x20 mm/kasan/common.c:368 kasan_slab_free include/linux/kasan.h:235 [inline] slab_free_hook mm/slub.c:1602 [inline] slab_free_freelist_hook+0xcc/0x1a0 mm/slub.c:1628 slab_free mm/slub.c:3210 [inline] kfree+0xd5/0x320 mm/slub.c:4198 io_put_identity fs/io_uring.c:1262 [inline] io_req_clean_work fs/io_uring.c:1300 [inline] io_dismantle_req+0x9b0/0xd90 fs/io_uring.c:1896 __io_free_req+0x9c/0x380 fs/io_uring.c:1904 io_free_req fs/io_uring.c:2137 [inline] io_put_req fs/io_uring.c:2226 [inline] io_free_work+0x92/0x5e0 fs/io_uring.c:7848 io_worker_handle_work+0x16bc/0x1d90 fs/io-wq.c:581 io_wqe_worker+0x39f/0xf20 fs/io-wq.c:615 kthread+0x371/0x390 kernel/kthread.c:313 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:296 Allocated by task 29071: kasan_save_stack mm/kasan/common.c:38 [inline] kasan_set_track mm/kasan/common.c:46 [inline] set_alloc_info mm/kasan/common.c:428 [inline] ____kasan_kmalloc+0xdc/0x110 mm/kasan/common.c:507 __kasan_kmalloc+0x9/0x10 mm/kasan/common.c:516 kasan_kmalloc include/linux/kasan.h:269 [inline] kmem_cache_alloc_trace+0x210/0x3a0 mm/slub.c:2981 kmalloc include/linux/slab.h:552 [inline] io_uring_alloc_task_context+0x57/0x550 fs/io_uring.c:7903 io_uring_add_task_file+0x1f7/0x290 fs/io_uring.c:8782 io_uring_install_fd fs/io_uring.c:9316 [inline] io_uring_create+0x2194/0x3490 fs/io_uring.c:9518 io_uring_setup fs/io_uring.c:9557 [inline] __do_sys_io_uring_setup fs/io_uring.c:9563 [inline] __se_sys_io_uring_setup fs/io_uring.c:9560 [inline] __x64_sys_io_uring_setup+0x1ce/0x290 fs/io_uring.c:9560 do_syscall_64+0x31/0x70 arch/x86/entry/common.c:46 entry_SYSCALL_64_after_hwframe+0x44/0xa9 Last potentially related work creation: kasan_save_stack+0x36/0x60 mm/kasan/common.c:38 kasan_record_aux_stack+0xd3/0xf0 mm/kasan/generic.c:345 __call_rcu kernel/rcu/tree.c:2963 [inline] call_rcu+0x12f/0x1500 kernel/rcu/tree.c:3037 rhashtable_rehash_table lib/rhashtable.c:345 [inline] rht_deferred_worker+0x1064/0x1670 lib/rhashtable.c:429 process_one_work+0x6b4/0xfb0 kernel/workqueue.c:2296 worker_thread+0xb15/0x1600 kernel/workqueue.c:2442 kthread+0x371/0x390 kernel/kthread.c:313 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:296 Second to last potentially related work creation: kasan_save_stack+0x36/0x60 mm/kasan/common.c:38 kasan_record_aux_stack+0xd3/0xf0 mm/kasan/generic.c:345 __call_rcu kernel/rcu/tree.c:2963 [inline] call_rcu+0x12f/0x1500 kernel/rcu/tree.c:3037 neigh_parms_release+0x1da/0x210 net/core/neighbour.c:1675 inetdev_destroy net/ipv4/devinet.c:325 [inline] inetdev_event+0x81f/0x10f0 net/ipv4/devinet.c:1599 notifier_call_chain kernel/notifier.c:83 [inline] raw_notifier_call_chain+0x8e/0xf0 kernel/notifier.c:410 call_netdevice_notifiers_info net/core/dev.c:2054 [inline] call_netdevice_notifiers_extack net/core/dev.c:2066 [inline] call_netdevice_notifiers net/core/dev.c:2080 [inline] rollback_registered_many+0xe2e/0x1620 net/core/dev.c:9563 unregister_netdevice_many+0x4e/0x290 net/core/dev.c:10772 ip_tunnel_delete_nets+0x375/0x3c0 net/ipv4/ip_tunnel.c:1122 ipgre_exit_batch_net+0x22/0x30 net/ipv4/ip_gre.c:1024 ops_exit_list net/core/net_namespace.c:192 [inline] cleanup_net+0x76c/0xd60 net/core/net_namespace.c:608 process_one_work+0x6b4/0xfb0 kernel/workqueue.c:2296 worker_thread+0xb15/0x1600 kernel/workqueue.c:2442 kthread+0x371/0x390 kernel/kthread.c:313 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:296 The buggy address belongs to the object at ffff88810f24db00 which belongs to the cache kmalloc-192 of size 192 The buggy address is located 88 bytes inside of 192-byte region [ffff88810f24db00, ffff88810f24dbc0) The buggy address belongs to the page: page:ffffea00043c9340 refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x10f24d flags: 0x8000000000000200(slab) raw: 8000000000000200 dead000000000100 dead000000000122 ffff888100043380 raw: 0000000000000000 0000000000100010 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 0, migratetype Unmovable, gfp_mask 0x112a20(GFP_ATOMIC|__GFP_NOWARN|__GFP_NORETRY|__GFP_HARDWALL), pid 849, ts 126095157049, free_ts 125968922217 set_page_owner include/linux/page_owner.h:35 [inline] post_alloc_hook mm/page_alloc.c:2385 [inline] prep_new_page mm/page_alloc.c:2391 [inline] get_page_from_freelist+0xa74/0xa90 mm/page_alloc.c:4063 __alloc_pages_nodemask+0x3c8/0x820 mm/page_alloc.c:5107 alloc_slab_page mm/slub.c:1813 [inline] allocate_slab+0x6b/0x350 mm/slub.c:1815 new_slab mm/slub.c:1876 [inline] new_slab_objects mm/slub.c:2635 [inline] ___slab_alloc+0x143/0x2f0 mm/slub.c:2798 __slab_alloc mm/slub.c:2838 [inline] slab_alloc_node mm/slub.c:2920 [inline] slab_alloc mm/slub.c:2962 [inline] kmem_cache_alloc_trace+0x278/0x3a0 mm/slub.c:2979 kmalloc include/linux/slab.h:552 [inline] kzalloc include/linux/slab.h:664 [inline] mca_alloc net/ipv6/mcast.c:853 [inline] __ipv6_dev_mc_inc+0x3bb/0xaa0 net/ipv6/mcast.c:911 ipv6_dev_mc_inc+0x1f/0x30 net/ipv6/mcast.c:935 ipv6_add_dev+0xca0/0x10d0 net/ipv6/addrconf.c:457 addrconf_notify+0x6c3/0x3ad0 net/ipv6/addrconf.c:3533 notifier_call_chain kernel/notifier.c:83 [inline] raw_notifier_call_chain+0x8e/0xf0 kernel/notifier.c:410 call_netdevice_notifiers_info net/core/dev.c:2054 [inline] call_netdevice_notifiers_extack net/core/dev.c:2066 [inline] call_netdevice_notifiers net/core/dev.c:2080 [inline] register_netdevice+0x1502/0x1ad0 net/core/dev.c:10145 __ip_tunnel_create+0x2af/0x370 net/ipv4/ip_tunnel.c:267 ip_tunnel_init_net+0x29b/0x750 net/ipv4/ip_tunnel.c:1069 erspan_init_net+0x29/0x30 net/ipv4/ip_gre.c:1698 ops_init+0x199/0x380 net/core/net_namespace.c:152 setup_net+0x21b/0xa70 net/core/net_namespace.c:344 page last free stack trace: reset_page_owner include/linux/page_owner.h:28 [inline] free_pages_prepare mm/page_alloc.c:1331 [inline] free_pcp_prepare+0x18f/0x1c0 mm/page_alloc.c:1405 free_unref_page_prepare mm/page_alloc.c:3291 [inline] free_unref_page mm/page_alloc.c:3341 [inline] free_the_page mm/page_alloc.c:5166 [inline] __free_pages+0x2e3/0x4a0 mm/page_alloc.c:5174 __free_slab+0xdf/0x1a0 mm/slub.c:1901 free_slab mm/slub.c:1916 [inline] discard_slab mm/slub.c:1922 [inline] unfreeze_partials+0x17d/0x1b0 mm/slub.c:2416 put_cpu_partial+0xc8/0x190 mm/slub.c:2452 __slab_free+0x2eb/0x4e0 mm/slub.c:3102 do_slab_free mm/slub.c:3198 [inline] ___cache_free+0x131/0x150 mm/slub.c:3217 qlink_free+0x38/0x40 mm/kasan/quarantine.c:146 qlist_free_all mm/kasan/quarantine.c:165 [inline] kasan_quarantine_reduce+0x178/0x1d0 mm/kasan/quarantine.c:272 __kasan_slab_alloc+0x2f/0xe0 mm/kasan/common.c:438 kasan_slab_alloc include/linux/kasan.h:259 [inline] slab_post_alloc_hook mm/slab.h:583 [inline] slab_alloc_node mm/slub.c:2954 [inline] slab_alloc mm/slub.c:2962 [inline] kmem_cache_alloc+0x1a2/0x380 mm/slub.c:2967 getname_flags+0xba/0x650 fs/namei.c:141 user_path_at_empty+0x2d/0x50 fs/namei.c:2726 user_path_at include/linux/namei.h:59 [inline] vfs_statx+0x10a/0x3f0 fs/stat.c:193 vfs_fstatat fs/stat.c:215 [inline] __do_sys_newfstatat fs/stat.c:384 [inline] __se_sys_newfstatat+0xc8/0x760 fs/stat.c:378 __x64_sys_newfstatat+0x9b/0xb0 fs/stat.c:378 Memory state around the buggy address: ffff88810f24da00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff88810f24da80: 00 00 fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff88810f24db00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ^ ffff88810f24db80: 00 00 00 00 00 00 fc fc fc fc fc fc fc fc fc fc ffff88810f24dc00: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================