================================================================== BUG: KCSAN: data-race in wg_packet_send_staged_packets / wg_packet_send_staged_packets write to 0xffff888115784b28 of 4 bytes by interrupt on cpu 1: wg_cpumask_next_online drivers/net/wireguard/queueing.h:130 [inline] wg_queue_enqueue_per_device_and_peer drivers/net/wireguard/queueing.h:173 [inline] wg_packet_create_data drivers/net/wireguard/send.c:320 [inline] wg_packet_send_staged_packets+0x6f9/0xae0 drivers/net/wireguard/send.c:388 wg_packet_send_keepalive+0xe2/0x100 drivers/net/wireguard/send.c:239 wg_expired_send_persistent_keepalive+0x3c/0x50 drivers/net/wireguard/timers.c:141 call_timer_fn+0x3a/0x300 kernel/time/timer.c:1793 expire_timers kernel/time/timer.c:1844 [inline] __run_timers kernel/time/timer.c:2418 [inline] __run_timer_base+0x417/0x640 kernel/time/timer.c:2429 run_timer_base kernel/time/timer.c:2438 [inline] run_timer_softirq+0x31/0x70 kernel/time/timer.c:2448 __do_softirq+0xc8/0x285 kernel/softirq.c:554 invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu kernel/softirq.c:633 [inline] irq_exit_rcu+0x3c/0x90 kernel/softirq.c:645 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline] sysvec_apic_timer_interrupt+0x37/0x80 arch/x86/kernel/apic/apic.c:1043 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 read to 0xffff888115784b28 of 4 bytes by interrupt on cpu 0: wg_cpumask_next_online drivers/net/wireguard/queueing.h:127 [inline] wg_queue_enqueue_per_device_and_peer drivers/net/wireguard/queueing.h:173 [inline] wg_packet_create_data drivers/net/wireguard/send.c:320 [inline] wg_packet_send_staged_packets+0x614/0xae0 drivers/net/wireguard/send.c:388 wg_packet_send_keepalive+0xe2/0x100 drivers/net/wireguard/send.c:239 wg_expired_send_persistent_keepalive+0x3c/0x50 drivers/net/wireguard/timers.c:141 call_timer_fn+0x3a/0x300 kernel/time/timer.c:1793 expire_timers kernel/time/timer.c:1844 [inline] __run_timers kernel/time/timer.c:2418 [inline] __run_timer_base+0x417/0x640 kernel/time/timer.c:2429 run_timer_base kernel/time/timer.c:2438 [inline] run_timer_softirq+0x31/0x70 kernel/time/timer.c:2448 __do_softirq+0xc8/0x285 kernel/softirq.c:554 invoke_softirq kernel/softirq.c:428 [inline] __irq_exit_rcu kernel/softirq.c:633 [inline] irq_exit_rcu+0x3c/0x90 kernel/softirq.c:645 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline] sysvec_apic_timer_interrupt+0x73/0x80 arch/x86/kernel/apic/apic.c:1043 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 watchpoint_slot kernel/kcsan/encoding.h:90 [inline] find_watchpoint kernel/kcsan/core.c:119 [inline] check_access kernel/kcsan/core.c:737 [inline] __tsan_read4+0x17/0x180 kernel/kcsan/core.c:1024 crc32_body lib/crc32.c:110 [inline] crc32_le_generic lib/crc32.c:179 [inline] __crc32c_le_base+0xd4/0x520 lib/crc32.c:201 chksum_update+0x32/0x50 crypto/crc32c_generic.c:88 crypto_shash_update+0x4a/0x60 crypto/shash.c:70 ext4_chksum fs/ext4/ext4.h:2476 [inline] ext4_block_bitmap_csum_set+0x13e/0x260 fs/ext4/bitmap.c:91 ext4_mb_mark_context+0x716/0x9b0 fs/ext4/mballoc.c:4038 ext4_mb_clear_bb fs/ext4/mballoc.c:6455 [inline] ext4_free_blocks+0x7eb/0x1310 fs/ext4/mballoc.c:6639 ext4_remove_blocks fs/ext4/extents.c:2521 [inline] ext4_ext_rm_leaf fs/ext4/extents.c:2686 [inline] ext4_ext_remove_space+0x1851/0x2a90 fs/ext4/extents.c:2934 ext4_ext_truncate+0xc4/0x150 fs/ext4/extents.c:4440 ext4_truncate+0x773/0xb10 fs/ext4/inode.c:4146 ext4_evict_inode+0x8b4/0xdd0 fs/ext4/inode.c:258 evict+0x1ae/0x420 fs/inode.c:667 iput_final fs/inode.c:1741 [inline] iput+0x432/0x5c0 fs/inode.c:1767 do_unlinkat+0x282/0x4c0 fs/namei.c:4406 __do_sys_unlink fs/namei.c:4447 [inline] __se_sys_unlink fs/namei.c:4445 [inline] __x64_sys_unlink+0x30/0x40 fs/namei.c:4445 x64_sys_call+0x286b/0x2d30 arch/x86/include/generated/asm/syscalls_64.h:88 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1d0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f value changed: 0x00000001 -> 0x00000000 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 427 Comm: syz-executor.4 Tainted: G W 6.9.0-rc4-syzkaller-00031-g96fca68c4fbf #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024 ==================================================================