syzbot


KCSAN: data-race in handle_edge_irq / kstat_irqs

Status: auto-closed as invalid on 2020/05/05 07:15
Subsystems: kernel
[Documentation on labels]
First crash: 1557d, last: 1519d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in handle_edge_irq / kstat_irqs (2) kernel 2 1422d 1442d 0/26 closed as invalid on 2020/06/18 14:24

Sample crash report:
==================================================================
BUG: KCSAN: data-race in handle_edge_irq / kstat_irqs

write to 0xffff888128cdba88 of 4 bytes by interrupt on cpu 0:
 kstat_incr_irqs_this_cpu kernel/irq/internals.h:261 [inline]
 handle_edge_irq+0x133/0x4a0 kernel/irq/chip.c:808
 generic_handle_irq_desc include/linux/irqdesc.h:156 [inline]
 do_IRQ+0x7c/0x130 arch/x86/kernel/irq.c:250
 ret_from_intr+0x0/0x21
 arch_local_irq_restore arch/x86/include/asm/paravirt.h:752 [inline]
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:160 [inline]
 _raw_spin_unlock_irqrestore+0x51/0x80 kernel/locking/spinlock.c:191
 unlock_hrtimer_base kernel/time/hrtimer.c:898 [inline]
 hrtimer_start_range_ns+0x463/0x6a0 kernel/time/hrtimer.c:1136
 hrtimer_start_expires include/linux/hrtimer.h:435 [inline]
 hrtimer_sleeper_start_expires kernel/time/hrtimer.c:1795 [inline]
 schedule_hrtimeout_range_clock+0x100/0x1e0 kernel/time/hrtimer.c:2129
 schedule_hrtimeout_range+0x34/0x50 kernel/time/hrtimer.c:2177
 poll_schedule_timeout.constprop.0+0x75/0xc0 fs/select.c:243
 do_select+0xd7f/0x1020 fs/select.c:603
 core_sys_select+0x312/0x680 fs/select.c:677
 kern_select+0x106/0x170 fs/select.c:718
 __do_sys_select fs/select.c:725 [inline]
 __se_sys_select fs/select.c:722 [inline]
 __x64_sys_select+0x70/0x90 fs/select.c:722
 do_syscall_64+0xcc/0x3a0 arch/x86/entry/common.c:294
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

read to 0xffff888128cdba88 of 4 bytes by task 2663 on cpu 1:
 kstat_irqs+0x157/0x160 kernel/irq/irqdesc.c:991
 kstat_irqs_usr+0x24/0x38 kernel/irq/irqdesc.c:1012
 show_all_irqs fs/proc/stat.c:101 [inline]
 show_stat+0x88f/0xa20 fs/proc/stat.c:194
 seq_read+0x350/0x9d0 fs/seq_file.c:229
 proc_reg_read+0xe9/0x140 fs/proc/inode.c:223
 do_loop_readv_writev fs/read_write.c:714 [inline]
 do_loop_readv_writev fs/read_write.c:701 [inline]
 do_iter_read+0x357/0x3d0 fs/read_write.c:935
 vfs_readv+0x9c/0xf0 fs/read_write.c:1053
 do_preadv+0x131/0x1d0 fs/read_write.c:1145
 __do_sys_preadv fs/read_write.c:1195 [inline]
 __se_sys_preadv fs/read_write.c:1190 [inline]
 __x64_sys_preadv+0x61/0x80 fs/read_write.c:1190
 do_syscall_64+0xcc/0x3a0 arch/x86/entry/common.c:294
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 2663 Comm: syz-executor.1 Not tainted 5.6.0-rc1-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/02/25 07:09 https://github.com/google/ktsan.git kcsan 766d004d1b85 59b57593 .config console log report ci2-upstream-kcsan-gce
2020/02/02 17:01 https://github.com/google/ktsan.git kcsan 245a43005292 93e5e335 .config console log report ci2-upstream-kcsan-gce
2020/01/31 22:45 https://github.com/google/ktsan.git kcsan 245a43005292 0eb59c27 .config console log report ci2-upstream-kcsan-gce
2020/01/18 12:56 https://github.com/google/ktsan.git kcsan 245a43005292 3de7aabb .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.