================================================================== BUG: KASAN: use-after-free in rose_timer_expiry+0x40c/0x470 net/rose/rose_timer.c:183 Read of size 2 at addr ffff0000e75b842a by task syz.6.837/7710 CPU: 1 PID: 7710 Comm: syz.6.837 Not tainted 5.15.181-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025 Call trace: dump_backtrace+0x0/0x43c arch/arm64/kernel/stacktrace.c:152 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:216 __dump_stack+0x30/0x40 lib/dump_stack.c:88 dump_stack_lvl+0xf8/0x160 lib/dump_stack.c:106 print_address_description+0x78/0x30c mm/kasan/report.c:248 __kasan_report mm/kasan/report.c:434 [inline] kasan_report+0xec/0x15c mm/kasan/report.c:451 __asan_report_load2_noabort+0x44/0x50 mm/kasan/report_generic.c:307 rose_timer_expiry+0x40c/0x470 net/rose/rose_timer.c:183 call_timer_fn+0x19c/0x858 kernel/time/timer.c:1451 expire_timers kernel/time/timer.c:1496 [inline] __run_timers+0x46c/0x6c4 kernel/time/timer.c:1767 run_timer_softirq+0x7c/0x114 kernel/time/timer.c:1780 handle_softirqs+0x344/0xbf0 kernel/softirq.c:558 __do_softirq kernel/softirq.c:592 [inline] do_softirq_own_stack include/asm-generic/softirq_stack.h:10 [inline] invoke_softirq kernel/softirq.c:439 [inline] __irq_exit_rcu+0x240/0x440 kernel/softirq.c:641 irq_exit+0x14/0x88 kernel/softirq.c:665 handle_domain_irq+0x14c/0x1fc kernel/irq/irqdesc.c:711 gic_handle_irq+0x78/0x1c8 drivers/irqchip/irq-gic-v3.c:765 call_on_irq_stack+0x24/0x4c arch/arm64/kernel/entry.S:899 do_interrupt_handler+0x6c/0x88 arch/arm64/kernel/entry-common.c:267 el1_interrupt+0x30/0x58 arch/arm64/kernel/entry-common.c:454 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:470 el1h_64_irq+0x78/0x7c arch/arm64/kernel/entry.S:522 arch_local_irq_enable arch/arm64/include/asm/irqflags.h:35 [inline] raw_spin_rq_unlock_irq kernel/sched/sched.h:1338 [inline] finish_lock_switch+0xb8/0x1c4 kernel/sched/core.c:4784 finish_task_switch+0x120/0x6b0 kernel/sched/core.c:4902 context_switch kernel/sched/core.c:5033 [inline] __schedule+0xe04/0x1c0c kernel/sched/core.c:6376 schedule+0x11c/0x1c8 kernel/sched/core.c:6459 schedule_timeout+0xb4/0x2c8 kernel/time/timer.c:1890 unix_wait_for_peer+0x184/0x250 net/unix/af_unix.c:1304 unix_dgram_sendmsg+0xb7c/0x1188 net/unix/af_unix.c:1899 sock_sendmsg_nosec net/socket.c:704 [inline] __sock_sendmsg net/socket.c:716 [inline] ____sys_sendmsg+0x61c/0x920 net/socket.c:2436 ___sys_sendmsg+0x1d0/0x240 net/socket.c:2490 __sys_sendmmsg+0x218/0x5f0 net/socket.c:2576 __do_sys_sendmmsg net/socket.c:2605 [inline] __se_sys_sendmmsg net/socket.c:2602 [inline] __arm64_sys_sendmmsg+0xa0/0xbc net/socket.c:2602 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181 el0_svc+0x78/0x1e0 arch/arm64/kernel/entry-common.c:608 el0t_64_sync_handler+0xcc/0xe4 arch/arm64/kernel/entry-common.c:626 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584 Allocated by task 4076: 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:434 [inline] ____kasan_kmalloc mm/kasan/common.c:513 [inline] __kasan_kmalloc+0xb0/0xf0 mm/kasan/common.c:522 kasan_kmalloc include/linux/kasan.h:264 [inline] __kmalloc_node_track_caller+0x234/0x3bc mm/slub.c:4963 kmalloc_reserve+0xe4/0x26c net/core/skbuff.c:356 __alloc_skb+0x23c/0x67c net/core/skbuff.c:427 __napi_alloc_skb+0x13c/0x2ac net/core/skbuff.c:568 napi_alloc_skb include/linux/skbuff.h:3058 [inline] gve_rx_copy+0x4c/0x200 drivers/net/ethernet/google/gve/gve_utils.c:51 gve_rx drivers/net/ethernet/google/gve/gve_rx.c:402 [inline] gve_clean_rx_done+0x5c8/0x2020 drivers/net/ethernet/google/gve/gve_rx.c:556 gve_rx_poll+0xa0/0x1e4 drivers/net/ethernet/google/gve/gve_rx.c:610 gve_napi_poll+0xcc/0x264 drivers/net/ethernet/google/gve/gve_main.c:209 __napi_poll+0xb4/0x5dc net/core/dev.c:7075 napi_poll net/core/dev.c:7142 [inline] net_rx_action+0x468/0xa08 net/core/dev.c:7232 handle_softirqs+0x344/0xbf0 kernel/softirq.c:558 __do_softirq kernel/softirq.c:592 [inline] do_softirq_own_stack include/asm-generic/softirq_stack.h:10 [inline] do_softirq+0xfc/0x1b0 kernel/softirq.c:459 __local_bh_enable_ip+0x250/0x380 kernel/softirq.c:383 __raw_spin_unlock_bh include/linux/spinlock_api_smp.h:176 [inline] _raw_spin_unlock_bh+0xec/0x174 kernel/locking/spinlock.c:210 spin_unlock_bh include/linux/spinlock.h:408 [inline] ptr_ring_consume_bh include/linux/ptr_ring.h:367 [inline] wg_packet_decrypt_worker+0x218/0x980 drivers/net/wireguard/receive.c:506 process_one_work+0x79c/0x1140 kernel/workqueue.c:2310 worker_thread+0x8f4/0x101c kernel/workqueue.c:2457 kthread+0x374/0x454 kernel/kthread.c:334 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:870 The buggy address belongs to the object at ffff0000e75b8400 which belongs to the cache kmalloc-512 of size 512 The buggy address is located 42 bytes inside of 512-byte region [ffff0000e75b8400, ffff0000e75b8600) The buggy address belongs to the page: page:000000001c80dbce refcount:1 mapcount:0 mapping:0000000000000000 index:0xffff0000e75ba800 pfn:0x1275b8 head:000000001c80dbce order:2 compound_mapcount:0 compound_pincount:0 flags: 0x5ffc00000010200(slab|head|node=0|zone=2|lastcpupid=0x7ff) raw: 05ffc00000010200 fffffc00039cc108 fffffc00039c4208 ffff0000c0002600 raw: ffff0000e75ba800 0000000000100004 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000e75b8300: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff0000e75b8380: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc >ffff0000e75b8400: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff0000e75b8480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff0000e75b8500: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ================================================================== vkms_vblank_simulate: vblank timer overrun