Hello,
syzbot found the following issue on:
HEAD commit: 96485e44 Merge tag 'ext4_for_linus' of git://git.kernel.or..
git tree: upstream
console output:
https://syzkaller.appspot.com/x/log.txt?x=11b0e8ff900000
kernel config:
https://syzkaller.appspot.com/x/.config?x=f77d3e6006ad3937
dashboard link:
https://syzkaller.appspot.com/bug?extid=cdfd0c266dd84d19e3fd
compiler: clang version 12.0.0 (
https://github.com/llvm/llvm-project.git 913f6005669cfb590c99865a90bc51ed0983d09d)
CC: [
Ja...@zx2c4.com da...@davemloft.net ku...@kernel.org linux-...@vger.kernel.org net...@vger.kernel.org wire...@lists.zx2c4.com]
Unfortunately, I don't have any reproducer for this issue yet.
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by:
syzbot+cdfd0c...@syzkaller.appspotmail.com
==================================================================
BUG: KCSAN: data-race in wg_packet_send_staged_packets / wg_packet_send_staged_packets
write to 0xffff88812ba44a48 of 4 bytes by interrupt on cpu 1:
wg_cpumask_next_online drivers/net/wireguard/queueing.h:134 [inline]
wg_queue_enqueue_per_device_and_peer drivers/net/wireguard/queueing.h:153 [inline]
wg_packet_create_data drivers/net/wireguard/send.c:326 [inline]
wg_packet_send_staged_packets+0x5d5/0x990 drivers/net/wireguard/send.c:396
wg_packet_send_keepalive+0xea/0x100 drivers/net/wireguard/send.c:239
wg_expired_send_persistent_keepalive+0x38/0x50 drivers/net/wireguard/timers.c:141
call_timer_fn+0x2e/0x240 kernel/time/timer.c:1415
expire_timers+0x116/0x260 kernel/time/timer.c:1460
__run_timers+0x328/0x3c0 kernel/time/timer.c:1757
run_timer_softirq+0x19/0x30 kernel/time/timer.c:1770
__do_softirq+0x12c/0x2b1 kernel/softirq.c:298
asm_call_irq_on_stack+0xf/0x20
__run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline]
run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline]
do_softirq_own_stack+0x32/0x40 arch/x86/kernel/irq_64.c:77
invoke_softirq kernel/softirq.c:393 [inline]
__irq_exit_rcu+0xb2/0xc0 kernel/softirq.c:423
sysvec_apic_timer_interrupt+0x74/0x90 arch/x86/kernel/apic/apic.c:1091
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:631
native_safe_halt arch/x86/include/asm/irqflags.h:60 [inline]
arch_safe_halt arch/x86/include/asm/irqflags.h:103 [inline]
acpi_safe_halt drivers/acpi/processor_idle.c:111 [inline]
acpi_idle_do_entry drivers/acpi/processor_idle.c:517 [inline]
acpi_idle_enter+0x25b/0x2e0 drivers/acpi/processor_idle.c:648
cpuidle_enter_state+0x2bd/0x750 drivers/cpuidle/cpuidle.c:237
cpuidle_enter+0x3c/0x60 drivers/cpuidle/cpuidle.c:351
call_cpuidle kernel/sched/idle.c:132 [inline]
cpuidle_idle_call kernel/sched/idle.c:213 [inline]
do_idle+0x193/0x230 kernel/sched/idle.c:273
cpu_startup_entry+0x15/0x20 kernel/sched/idle.c:369
secondary_startup_64_no_verify+0xa6/0xab
read to 0xffff88812ba44a48 of 4 bytes by interrupt on cpu 0:
wg_cpumask_next_online drivers/net/wireguard/queueing.h:130 [inline]
wg_queue_enqueue_per_device_and_peer drivers/net/wireguard/queueing.h:153 [inline]
wg_packet_create_data drivers/net/wireguard/send.c:326 [inline]
wg_packet_send_staged_packets+0x592/0x990 drivers/net/wireguard/send.c:396
wg_packet_send_keepalive+0xea/0x100 drivers/net/wireguard/send.c:239
wg_expired_send_persistent_keepalive+0x38/0x50 drivers/net/wireguard/timers.c:141
call_timer_fn+0x2e/0x240 kernel/time/timer.c:1415
expire_timers+0x116/0x260 kernel/time/timer.c:1460
__run_timers+0x328/0x3c0 kernel/time/timer.c:1757
run_timer_softirq+0x19/0x30 kernel/time/timer.c:1770
__do_softirq+0x12c/0x2b1 kernel/softirq.c:298
asm_call_irq_on_stack+0xf/0x20
__run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline]
run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline]
do_softirq_own_stack+0x32/0x40 arch/x86/kernel/irq_64.c:77
invoke_softirq kernel/softirq.c:393 [inline]
__irq_exit_rcu+0xb2/0xc0 kernel/softirq.c:423
sysvec_apic_timer_interrupt+0x74/0x90 arch/x86/kernel/apic/apic.c:1091
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:631
native_safe_halt arch/x86/include/asm/irqflags.h:60 [inline]
arch_safe_halt arch/x86/include/asm/irqflags.h:103 [inline]
acpi_safe_halt drivers/acpi/processor_idle.c:111 [inline]
acpi_idle_do_entry drivers/acpi/processor_idle.c:517 [inline]
acpi_idle_enter+0x25b/0x2e0 drivers/acpi/processor_idle.c:648
cpuidle_enter_state+0x2bd/0x750 drivers/cpuidle/cpuidle.c:237
cpuidle_enter+0x3c/0x60 drivers/cpuidle/cpuidle.c:351
call_cpuidle kernel/sched/idle.c:132 [inline]
cpuidle_idle_call kernel/sched/idle.c:213 [inline]
do_idle+0x193/0x230 kernel/sched/idle.c:273
cpu_startup_entry+0x15/0x20 kernel/sched/idle.c:369
rest_init+0xd7/0xe0 init/main.c:711
arch_call_rest_init+0xa/0xb
start_kernel+0x5a0/0x625 init/main.c:1051
secondary_startup_64_no_verify+0xa6/0xab
Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.9.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================
---
This report is generated by a bot. It may contain errors.
See
https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at
syzk...@googlegroups.com.
syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.