================================================================== BUG: KFENCE: use-after-free write in rose_timer_expiry+0x22d/0x4b0 net/rose/rose_timer.c:183 Use-after-free write at 0xffff88823bfc602a (in kfence-#226): rose_timer_expiry+0x22d/0x4b0 net/rose/rose_timer.c:183 call_timer_fn+0x17e/0x5f0 kernel/time/timer.c:1747 expire_timers kernel/time/timer.c:1798 [inline] __run_timers kernel/time/timer.c:2372 [inline] __run_timer_base+0x61a/0x860 kernel/time/timer.c:2384 run_timer_base kernel/time/timer.c:2393 [inline] run_timer_softirq+0xb7/0x180 kernel/time/timer.c:2403 handle_softirqs+0x286/0x870 kernel/softirq.c:579 __do_softirq kernel/softirq.c:613 [inline] invoke_softirq kernel/softirq.c:453 [inline] __irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline] sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1050 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 lock_acquire+0x175/0x360 kernel/locking/lockdep.c:5875 rcu_lock_acquire include/linux/rcupdate.h:331 [inline] rcu_read_lock include/linux/rcupdate.h:841 [inline] class_rcu_constructor include/linux/rcupdate.h:1155 [inline] unwind_next_frame+0xc2/0x2390 arch/x86/kernel/unwind_orc.c:479 arch_stack_walk+0x11c/0x150 arch/x86/kernel/stacktrace.c:25 stack_trace_save+0x9c/0xe0 kernel/stacktrace.c:122 kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3e/0x80 mm/kasan/common.c:68 kasan_save_free_info+0x46/0x50 mm/kasan/generic.c:576 poison_slab_object mm/kasan/common.c:247 [inline] __kasan_slab_free+0x62/0x70 mm/kasan/common.c:264 kasan_slab_free include/linux/kasan.h:233 [inline] slab_free_hook mm/slub.c:2381 [inline] slab_free mm/slub.c:4643 [inline] kfree+0x18e/0x440 mm/slub.c:4842 kobject_cleanup lib/kobject.c:695 [inline] kobject_release lib/kobject.c:720 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x270/0x480 lib/kobject.c:737 net_rx_queue_update_kobjects+0x66f/0x720 net/core/net-sysfs.c:1317 netif_set_real_num_rx_queues+0x244/0x3b0 net/core/dev.c:3235 veth_init_queues drivers/net/veth.c:1798 [inline] veth_newlink+0x859/0xa50 drivers/net/veth.c:1902 rtnl_newlink_create+0x310/0xb00 net/core/rtnetlink.c:3823 __rtnl_newlink net/core/rtnetlink.c:3940 [inline] rtnl_newlink+0x16d6/0x1c70 net/core/rtnetlink.c:4055 rtnetlink_rcv_msg+0x7cf/0xb70 net/core/rtnetlink.c:6944 netlink_rcv_skb+0x208/0x470 net/netlink/af_netlink.c:2534 netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline] netlink_unicast+0x75b/0x8d0 net/netlink/af_netlink.c:1339 netlink_sendmsg+0x805/0xb30 net/netlink/af_netlink.c:1883 sock_sendmsg_nosec net/socket.c:712 [inline] __sock_sendmsg+0x21c/0x270 net/socket.c:727 __sys_sendto+0x3bd/0x520 net/socket.c:2180 __do_sys_sendto net/socket.c:2187 [inline] __se_sys_sendto net/socket.c:2183 [inline] __x64_sys_sendto+0xde/0x100 net/socket.c:2183 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f kfence-#226: 0xffff88823bfc6000-0xffff88823bfc60ef, size=240, cache=skbuff_head_cache allocated by task 11617 on cpu 0 at 279.933770s (6.662279s ago): xdp_recv_frames net/bpf/test_run.c:260 [inline] xdp_test_run_batch net/bpf/test_run.c:361 [inline] bpf_test_run_xdp_live+0x15f1/0x1b10 net/bpf/test_run.c:390 bpf_prog_test_run_xdp+0x713/0x1000 net/bpf/test_run.c:1322 bpf_prog_test_run+0x2c7/0x340 kernel/bpf/syscall.c:4429 __sys_bpf+0x4a4/0x860 kernel/bpf/syscall.c:5854 __do_sys_bpf kernel/bpf/syscall.c:5943 [inline] __se_sys_bpf kernel/bpf/syscall.c:5941 [inline] __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:5941 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f freed by task 11617 on cpu 0 at 279.936306s (6.704934s ago): kfree_skb_reason include/linux/skbuff.h:1275 [inline] __netif_receive_skb_core+0x3be7/0x4180 net/core/dev.c:5951 __netif_receive_skb_list_core+0x23f/0x800 net/core/dev.c:6052 __netif_receive_skb_list net/core/dev.c:6119 [inline] netif_receive_skb_list_internal+0x975/0xcc0 net/core/dev.c:6210 gro_normal_list include/net/gro.h:532 [inline] gro_normal_one include/net/gro.h:546 [inline] gro_skb_finish net/core/gro.c:601 [inline] gro_receive_skb+0x642/0xce0 net/core/gro.c:631 napi_gro_receive include/linux/netdevice.h:4159 [inline] gro_cell_poll+0x142/0x1c0 net/core/gro_cells.c:61 __napi_poll+0xc7/0x480 net/core/dev.c:7414 napi_poll net/core/dev.c:7478 [inline] net_rx_action+0x707/0xe30 net/core/dev.c:7605 handle_softirqs+0x286/0x870 kernel/softirq.c:579 do_softirq+0xec/0x180 kernel/softirq.c:480 __local_bh_enable_ip+0x17d/0x1c0 kernel/softirq.c:407 local_bh_enable include/linux/bottom_half.h:33 [inline] xdp_test_run_batch net/bpf/test_run.c:368 [inline] bpf_test_run_xdp_live+0x1868/0x1b10 net/bpf/test_run.c:390 bpf_prog_test_run_xdp+0x713/0x1000 net/bpf/test_run.c:1322 bpf_prog_test_run+0x2c7/0x340 kernel/bpf/syscall.c:4429 __sys_bpf+0x4a4/0x860 kernel/bpf/syscall.c:5854 __do_sys_bpf kernel/bpf/syscall.c:5943 [inline] __se_sys_bpf kernel/bpf/syscall.c:5941 [inline] __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:5941 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f CPU: 1 UID: 0 PID: 11642 Comm: syz-executor Not tainted 6.16.0-rc3-syzkaller-00131-g72fb83735c71 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 RIP: 0010:rose_timer_expiry+0x22d/0x4b0 net/rose/rose_timer.c:183 Code: 80 3c 28 00 74 08 4c 89 e7 e8 2f a2 c7 f7 4d 8b 24 24 49 83 c4 2a 4c 89 e0 48 c1 e8 03 42 0f b6 04 28 84 c0 0f 85 2c 02 00 00 <66> 41 ff 0c 24 4c 89 ff be 6e 00 00 00 ba ff ff ff ff b9 ff ff ff RSP: 0018:ffffc90000a08b68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: ffff888032dab6f8 RCX: ffff888028ff3c00 RDX: 0000000000000100 RSI: ffffffff8f66d090 RDI: 0000000000000002 RBP: 1ffff110065b56bd R08: ffff888028ff3c00 R09: 0000000000000004 R10: 0000000000000004 R11: 0000000000000100 R12: ffff88823bfc602a R13: dffffc0000000000 R14: ffff888032dab1c0 R15: ffff888032dab000 FS: 0000555594f9d500(0000) GS:ffff888125d50000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffff88823bfc602a CR3: 0000000079c76000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: call_timer_fn+0x17e/0x5f0 kernel/time/timer.c:1747 expire_timers kernel/time/timer.c:1798 [inline] __run_timers kernel/time/timer.c:2372 [inline] __run_timer_base+0x61a/0x860 kernel/time/timer.c:2384 run_timer_base kernel/time/timer.c:2393 [inline] run_timer_softirq+0xb7/0x180 kernel/time/timer.c:2403 handle_softirqs+0x286/0x870 kernel/softirq.c:579 __do_softirq kernel/softirq.c:613 [inline] invoke_softirq kernel/softirq.c:453 [inline] __irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline] sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1050 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 RIP: 0010:lock_acquire+0x175/0x360 kernel/locking/lockdep.c:5875 Code: 00 00 00 00 9c 8f 44 24 30 f7 44 24 30 00 02 00 00 0f 85 cd 00 00 00 f7 44 24 08 00 02 00 00 74 01 fb 65 48 8b 05 3b dd fe 10 <48> 3b 44 24 58 0f 85 f2 00 00 00 48 83 c4 60 5b 41 5c 41 5d 41 5e RSP: 0018:ffffc9000b2b6778 EFLAGS: 00000206 RAX: 15bd7050dc008000 RBX: 0000000000000000 RCX: 15bd7050dc008000 RDX: 0000000000000000 RSI: ffffffff8db6f006 RDI: ffffffff8be28d40 RBP: ffffffff81728af5 R08: 0000000000000000 R09: ffffffff81728af5 R10: ffffc9000b2b6938 R11: ffffffff81ace6a0 R12: 0000000000000002 R13: ffffffff8e13ee60 R14: 0000000000000000 R15: 0000000000000246 rcu_lock_acquire include/linux/rcupdate.h:331 [inline] rcu_read_lock include/linux/rcupdate.h:841 [inline] class_rcu_constructor include/linux/rcupdate.h:1155 [inline] unwind_next_frame+0xc2/0x2390 arch/x86/kernel/unwind_orc.c:479 arch_stack_walk+0x11c/0x150 arch/x86/kernel/stacktrace.c:25 stack_trace_save+0x9c/0xe0 kernel/stacktrace.c:122 kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3e/0x80 mm/kasan/common.c:68 kasan_save_free_info+0x46/0x50 mm/kasan/generic.c:576 poison_slab_object mm/kasan/common.c:247 [inline] __kasan_slab_free+0x62/0x70 mm/kasan/common.c:264 kasan_slab_free include/linux/kasan.h:233 [inline] slab_free_hook mm/slub.c:2381 [inline] slab_free mm/slub.c:4643 [inline] kfree+0x18e/0x440 mm/slub.c:4842 kobject_cleanup lib/kobject.c:695 [inline] kobject_release lib/kobject.c:720 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x270/0x480 lib/kobject.c:737 net_rx_queue_update_kobjects+0x66f/0x720 net/core/net-sysfs.c:1317 netif_set_real_num_rx_queues+0x244/0x3b0 net/core/dev.c:3235 veth_init_queues drivers/net/veth.c:1798 [inline] veth_newlink+0x859/0xa50 drivers/net/veth.c:1902 rtnl_newlink_create+0x310/0xb00 net/core/rtnetlink.c:3823 __rtnl_newlink net/core/rtnetlink.c:3940 [inline] rtnl_newlink+0x16d6/0x1c70 net/core/rtnetlink.c:4055 rtnetlink_rcv_msg+0x7cf/0xb70 net/core/rtnetlink.c:6944 netlink_rcv_skb+0x208/0x470 net/netlink/af_netlink.c:2534 netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline] netlink_unicast+0x75b/0x8d0 net/netlink/af_netlink.c:1339 netlink_sendmsg+0x805/0xb30 net/netlink/af_netlink.c:1883 sock_sendmsg_nosec net/socket.c:712 [inline] __sock_sendmsg+0x21c/0x270 net/socket.c:727 __sys_sendto+0x3bd/0x520 net/socket.c:2180 __do_sys_sendto net/socket.c:2187 [inline] __se_sys_sendto net/socket.c:2183 [inline] __x64_sys_sendto+0xde/0x100 net/socket.c:2183 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fddc43907bc Code: 2a 5f 02 00 44 8b 4c 24 2c 4c 8b 44 24 20 89 c5 44 8b 54 24 28 48 8b 54 24 18 b8 2c 00 00 00 48 8b 74 24 10 8b 7c 24 08 0f 05 <48> 3d 00 f0 ff ff 77 34 89 ef 48 89 44 24 08 e8 70 5f 02 00 48 8b RSP: 002b:00007ffeda535cb0 EFLAGS: 00000293 ORIG_RAX: 000000000000002c RAX: ffffffffffffffda RBX: 00007fddc50e4620 RCX: 00007fddc43907bc RDX: 000000000000006c RSI: 00007fddc50e4670 RDI: 0000000000000003 RBP: 0000000000000000 R08: 00007ffeda535d04 R09: 000000000000000c R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000003 R13: 0000000000000000 R14: 00007fddc50e4670 R15: 0000000000000000 ================================================================== ---------------- Code disassembly (best guess): 0: 80 3c 28 00 cmpb $0x0,(%rax,%rbp,1) 4: 74 08 je 0xe 6: 4c 89 e7 mov %r12,%rdi 9: e8 2f a2 c7 f7 call 0xf7c7a23d e: 4d 8b 24 24 mov (%r12),%r12 12: 49 83 c4 2a add $0x2a,%r12 16: 4c 89 e0 mov %r12,%rax 19: 48 c1 e8 03 shr $0x3,%rax 1d: 42 0f b6 04 28 movzbl (%rax,%r13,1),%eax 22: 84 c0 test %al,%al 24: 0f 85 2c 02 00 00 jne 0x256 * 2a: 66 41 ff 0c 24 decw (%r12) <-- trapping instruction 2f: 4c 89 ff mov %r15,%rdi 32: be 6e 00 00 00 mov $0x6e,%esi 37: ba ff ff ff ff mov $0xffffffff,%edx 3c: b9 .byte 0xb9 3d: ff (bad) 3e: ff (bad) 3f: ff .byte 0xff