syzbot


KCSAN: data-race in handle_edge_irq / kstat_irqs (2)

Status: closed as invalid on 2020/06/18 14:24
Subsystems: kernel
[Documentation on labels]
First crash: 1443d, last: 1423d
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 kernel 4 1520d 1558d 0/26 auto-closed as invalid on 2020/05/05 07:15

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

write to 0xffff88812bca0688 of 4 bytes by interrupt on cpu 1:
 kstat_incr_irqs_this_cpu kernel/irq/internals.h:259 [inline]
 handle_edge_irq+0x114/0x460 kernel/irq/chip.c:808
 generic_handle_irq_desc include/linux/irqdesc.h:156 [inline]
 do_IRQ+0x76/0x120 arch/x86/kernel/irq.c:250
 ret_from_intr+0x0/0x21
 arch_local_irq_restore arch/x86/include/asm/paravirt.h:759 [inline]
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:160 [inline]
 _raw_spin_unlock_irqrestore+0x4d/0x80 kernel/locking/spinlock.c:191
 spin_unlock_irqrestore include/linux/spinlock.h:408 [inline]
 uart_start+0xf3/0x1a0 drivers/tty/serial/serial_core.c:139
 uart_flush_chars+0x1b/0x30 drivers/tty/serial/serial_core.c:574
 __receive_buf drivers/tty/n_tty.c:1650 [inline]
 n_tty_receive_buf_common+0xde8/0x1a40 drivers/tty/n_tty.c:1742
 n_tty_receive_buf2+0x39/0x50 drivers/tty/n_tty.c:1777
 tty_ldisc_receive_buf+0x69/0xe0 drivers/tty/tty_buffer.c:461
 tty_port_default_receive_buf+0x82/0xd0 drivers/tty/tty_port.c:38
 receive_buf drivers/tty/tty_buffer.c:481 [inline]
 flush_to_ldisc+0x1dd/0x260 drivers/tty/tty_buffer.c:533
 process_one_work+0x424/0x930 kernel/workqueue.c:2268
 worker_thread+0x9a/0x7e0 kernel/workqueue.c:2414
 kthread+0x203/0x230 kernel/kthread.c:268
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

read to 0xffff88812bca0688 of 4 bytes by task 8861 on cpu 0:
 kstat_irqs+0x14b/0x160 kernel/irq/irqdesc.c:997
 kstat_irqs_usr+0x21/0x34 kernel/irq/irqdesc.c:1018
 show_all_irqs fs/proc/stat.c:101 [inline]
 show_stat+0x8ca/0xa50 fs/proc/stat.c:194
 seq_read+0x2ef/0x940 fs/seq_file.c:206
 pde_read fs/proc/inode.c:292 [inline]
 proc_reg_read+0xb3/0x1b0 fs/proc/inode.c:302
 do_loop_readv_writev fs/read_write.c:715 [inline]
 do_loop_readv_writev fs/read_write.c:702 [inline]
 do_iter_read+0x33f/0x3a0 fs/read_write.c:936
 vfs_readv+0x9c/0xf0 fs/read_write.c:1054
 do_preadv+0x129/0x1c0 fs/read_write.c:1146
 __do_sys_preadv fs/read_write.c:1196 [inline]
 __se_sys_preadv fs/read_write.c:1191 [inline]
 __x64_sys_preadv+0x5e/0x80 fs/read_write.c:1191
 do_syscall_64+0xc7/0x3b0 arch/x86/entry/common.c:295
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

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

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/06/01 01:31 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 a0331e89 .config console log report ci2-upstream-kcsan-gce
2020/05/12 10:26 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 a497a5b4 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.