================================================================== BUG: KASAN: double-free in rcu_free_sheaf+0x28/0xd8 mm/slub.c:5850 Free of addr ffff0000d11d4c80 by task syz.6.2060/11460 CPU: 1 UID: 0 PID: 11460 Comm: syz.6.2060 Tainted: G L syzkaller #0 PREEMPT Tainted: [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:499 (C) __dump_stack+0x30/0x40 lib/dump_stack.c:94 dump_stack_lvl+0xd8/0x12c lib/dump_stack.c:120 print_address_description+0xb0/0x238 mm/kasan/report.c:378 print_report+0x68/0x84 mm/kasan/report.c:482 kasan_report_invalid_free+0x74/0x9c mm/kasan/report.c:557 check_slab_allocation+0x138/0x17c mm/kasan/common.c:-1 __kasan_slab_pre_free+0x34/0x44 mm/kasan/common.c:261 kasan_slab_pre_free include/linux/kasan.h:199 [inline] slab_free_hook mm/slub.c:2634 [inline] __rcu_free_sheaf_prepare+0x110/0x2a8 mm/slub.c:2940 rcu_free_sheaf+0x28/0xd8 mm/slub.c:5850 rcu_do_batch kernel/rcu/tree.c:2617 [inline] rcu_core+0x580/0xef0 kernel/rcu/tree.c:2869 rcu_core_si+0x10/0x1c kernel/rcu/tree.c:2886 handle_softirqs+0x2e4/0xd34 kernel/softirq.c:622 __do_softirq+0x14/0x20 kernel/softirq.c:656 ____do_softirq+0x14/0x20 arch/arm64/kernel/irq.c:78 call_on_irq_stack+0x30/0x48 arch/arm64/kernel/entry.S:889 do_softirq_own_stack+0x20/0x2c arch/arm64/kernel/irq.c:83 invoke_softirq kernel/softirq.c:503 [inline] __irq_exit_rcu+0x1ac/0x428 kernel/softirq.c:735 irq_exit_rcu+0x14/0x84 kernel/softirq.c:752 __el1_irq arch/arm64/kernel/entry-common.c:510 [inline] el1_interrupt+0x40/0x60 arch/arm64/kernel/entry-common.c:522 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:527 el1h_64_irq+0x6c/0x70 arch/arm64/kernel/entry.S:590 __daif_local_irq_restore arch/arm64/include/asm/irqflags.h:175 [inline] (P) arch_local_irq_restore arch/arm64/include/asm/irqflags.h:195 [inline] (P) __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:178 [inline] (P) _raw_spin_unlock_irqrestore+0x44/0x98 kernel/locking/spinlock.c:198 (P) spin_unlock_irqrestore include/linux/spinlock.h:408 [inline] __wake_up_common_lock+0x5c/0x78 kernel/sched/wait.c:127 __wake_up_sync_key+0x20/0x2c kernel/sched/wait.c:192 __unix_dgram_recvmsg+0x2bc/0x898 net/unix/af_unix.c:2612 unix_dgram_recvmsg+0xcc/0xe4 net/unix/af_unix.c:2686 sock_recvmsg_nosec+0x90/0xe8 net/socket.c:1137 ____sys_recvmsg+0x4f8/0x604 net/socket.c:2916 ___sys_recvmsg+0x16c/0x1f4 net/socket.c:2960 do_recvmmsg+0x2a8/0x7e8 net/socket.c:3055 __sys_recvmmsg+0x1e0/0x270 net/socket.c:3129 __do_sys_recvmmsg net/socket.c:3152 [inline] __se_sys_recvmmsg net/socket.c:3145 [inline] __arm64_sys_recvmmsg+0xd0/0xf8 net/socket.c:3145 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0xe8/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:736 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:755 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:594 Allocated by task 4694: kasan_save_stack mm/kasan/common.c:57 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:78 kasan_save_alloc_info+0x44/0x54 mm/kasan/generic.c:570 poison_kmalloc_redzone mm/kasan/common.c:398 [inline] __kasan_kmalloc+0x9c/0xb4 mm/kasan/common.c:415 kasan_kmalloc include/linux/kasan.h:263 [inline] __kmalloc_cache_noprof+0x2d4/0x624 mm/slub.c:5420 kmalloc_noprof include/linux/slab.h:950 [inline] kzalloc_noprof include/linux/slab.h:1188 [inline] hwsim_update_pib+0x8c/0x36c drivers/net/ieee802154/mac802154_hwsim.c:101 hwsim_set_promiscuous_mode+0x194/0x2e8 drivers/net/ieee802154/mac802154_hwsim.c:323 drv_set_promiscuous_mode+0x160/0x468 net/mac802154/driver-ops.h:127 drv_start net/mac802154/driver-ops.h:195 [inline] mac802154_slave_open net/mac802154/iface.c:196 [inline] mac802154_wpan_open+0x153c/0x2f68 net/mac802154/iface.c:295 __dev_open+0x36c/0x76c net/core/dev.c:1702 __dev_change_flags+0x290/0x694 net/core/dev.c:9758 netif_change_flags+0x80/0x15c net/core/dev.c:9821 do_setlink+0xab0/0x31c0 net/core/rtnetlink.c:3181 rtnl_changelink net/core/rtnetlink.c:3800 [inline] __rtnl_newlink net/core/rtnetlink.c:3973 [inline] rtnl_newlink+0xd24/0x113c net/core/rtnetlink.c:4110 rtnetlink_rcv_msg+0x66c/0x9c8 net/core/rtnetlink.c:6997 netlink_rcv_skb+0x22c/0x410 net/netlink/af_netlink.c:2555 rtnetlink_rcv+0x28/0x38 net/core/rtnetlink.c:7024 netlink_unicast_kernel net/netlink/af_netlink.c:1318 [inline] netlink_unicast+0x610/0x800 net/netlink/af_netlink.c:1344 netlink_sendmsg+0x63c/0x920 net/netlink/af_netlink.c:1899 sock_sendmsg_nosec net/socket.c:787 [inline] __sock_sendmsg+0xc8/0x138 net/socket.c:802 __sys_sendto+0x254/0x338 net/socket.c:2265 __do_sys_sendto net/socket.c:2272 [inline] __se_sys_sendto net/socket.c:2268 [inline] __arm64_sys_sendto+0xd8/0xf8 net/socket.c:2268 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0xe8/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:736 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:755 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:594 Freed by task 11460: kasan_save_stack mm/kasan/common.c:57 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:78 kasan_save_free_info+0x58/0x70 mm/kasan/generic.c:584 poison_slab_object mm/kasan/common.c:253 [inline] __kasan_slab_free+0x74/0xa4 mm/kasan/common.c:285 kasan_slab_free include/linux/kasan.h:235 [inline] slab_free_hook mm/slub.c:2689 [inline] __rcu_free_sheaf_prepare+0x130/0x2a8 mm/slub.c:2940 rcu_free_sheaf+0x28/0xd8 mm/slub.c:5850 rcu_do_batch kernel/rcu/tree.c:2617 [inline] rcu_core+0x580/0xef0 kernel/rcu/tree.c:2869 rcu_core_si+0x10/0x1c kernel/rcu/tree.c:2886 handle_softirqs+0x2e4/0xd34 kernel/softirq.c:622 __do_softirq+0x14/0x20 kernel/softirq.c:656 The buggy address belongs to the object at ffff0000d11d4c80 which belongs to the cache kmalloc-64 of size 64 The buggy address is located 0 bytes inside of 64-byte region [ffff0000d11d4c80, ffff0000d11d4cc0) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff0000d11d4e80 pfn:0x1111d4 flags: 0x5ffc00000000200(workingset|node=0|zone=2|lastcpupid=0x7ff) page_type: f5(slab) raw: 05ffc00000000200 ffff0000c00018c0 fffffdffc31ec950 fffffdffc326ff10 raw: ffff0000d11d4e80 000000080020001d 00000000f5000000 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000d11d4b80: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ffff0000d11d4c00: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc >ffff0000d11d4c80: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ^ ffff0000d11d4d00: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ffff0000d11d4d80: fa fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc ==================================================================