================================================================== BUG: KCSAN: data-race in wq_worker_tick / wq_worker_tick read-write to 0xffff88810006d0b8 of 8 bytes by interrupt on cpu 1: wq_worker_tick+0x63/0x240 kernel/workqueue.c:1474 sched_tick+0xd2/0x110 kernel/sched/core.c:5609 update_process_times+0x15a/0x180 kernel/time/timer.c:2524 tick_sched_handle kernel/time/tick-sched.c:276 [inline] tick_nohz_handler+0x250/0x2d0 kernel/time/tick-sched.c:297 __run_hrtimer kernel/time/hrtimer.c:1691 [inline] __hrtimer_run_queues+0x20d/0x5e0 kernel/time/hrtimer.c:1755 hrtimer_interrupt+0x210/0x7b0 kernel/time/hrtimer.c:1817 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1026 [inline] __sysvec_apic_timer_interrupt+0x5c/0x1a0 arch/x86/kernel/apic/apic.c:1043 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1037 [inline] sysvec_apic_timer_interrupt+0x6e/0x80 arch/x86/kernel/apic/apic.c:1037 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 kcsan_setup_watchpoint+0x404/0x410 kernel/kcsan/core.c:705 tty_write_room+0x18/0x60 drivers/tty/tty_ioctl.c:68 __process_echoes+0x36/0x6b0 drivers/tty/n_tty.c:703 flush_echoes drivers/tty/n_tty.c:807 [inline] __receive_buf drivers/tty/n_tty.c:1642 [inline] n_tty_receive_buf_common+0x8f9/0xbe0 drivers/tty/n_tty.c:1739 n_tty_receive_buf2+0x33/0x40 drivers/tty/n_tty.c:1785 tty_ldisc_receive_buf+0x63/0x100 drivers/tty/tty_buffer.c:387 tty_port_default_receive_buf+0x59/0x90 drivers/tty/tty_port.c:37 receive_buf drivers/tty/tty_buffer.c:445 [inline] flush_to_ldisc+0x1ce/0x410 drivers/tty/tty_buffer.c:495 process_one_work kernel/workqueue.c:3229 [inline] process_scheduled_works+0x483/0x9a0 kernel/workqueue.c:3310 worker_thread+0x51d/0x6f0 kernel/workqueue.c:3391 kthread+0x1d1/0x210 kernel/kthread.c:389 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 read-write to 0xffff88810006d0b8 of 8 bytes by interrupt on cpu 0: wq_worker_tick+0x63/0x240 kernel/workqueue.c:1474 sched_tick+0xd2/0x110 kernel/sched/core.c:5609 update_process_times+0x15a/0x180 kernel/time/timer.c:2524 tick_sched_handle kernel/time/tick-sched.c:276 [inline] tick_nohz_handler+0x250/0x2d0 kernel/time/tick-sched.c:297 __run_hrtimer kernel/time/hrtimer.c:1691 [inline] __hrtimer_run_queues+0x20d/0x5e0 kernel/time/hrtimer.c:1755 hrtimer_interrupt+0x210/0x7b0 kernel/time/hrtimer.c:1817 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1026 [inline] __sysvec_apic_timer_interrupt+0x5c/0x1a0 arch/x86/kernel/apic/apic.c:1043 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1037 [inline] sysvec_apic_timer_interrupt+0x6e/0x80 arch/x86/kernel/apic/apic.c:1037 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 __preempt_count_dec_and_test arch/x86/include/asm/preempt.h:94 [inline] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline] _raw_spin_unlock_irqrestore+0x3d/0x60 kernel/locking/spinlock.c:194 spin_unlock_irqrestore include/linux/spinlock.h:406 [inline] tty_insert_flip_string_and_push_buffer+0x1ae/0x200 drivers/tty/tty_buffer.c:562 pty_write+0x7e/0xa0 drivers/tty/pty.c:118 tty_put_char+0x8d/0xc0 drivers/tty/tty_io.c:3168 n_tty_process_echo_ops drivers/tty/n_tty.c:663 [inline] __process_echoes+0x393/0x6b0 drivers/tty/n_tty.c:709 flush_echoes drivers/tty/n_tty.c:807 [inline] __receive_buf drivers/tty/n_tty.c:1642 [inline] n_tty_receive_buf_common+0x8f9/0xbe0 drivers/tty/n_tty.c:1739 n_tty_receive_buf2+0x33/0x40 drivers/tty/n_tty.c:1785 tty_ldisc_receive_buf+0x63/0x100 drivers/tty/tty_buffer.c:387 tty_port_default_receive_buf+0x59/0x90 drivers/tty/tty_port.c:37 receive_buf drivers/tty/tty_buffer.c:445 [inline] flush_to_ldisc+0x1ce/0x410 drivers/tty/tty_buffer.c:495 process_one_work kernel/workqueue.c:3229 [inline] process_scheduled_works+0x483/0x9a0 kernel/workqueue.c:3310 worker_thread+0x51d/0x6f0 kernel/workqueue.c:3391 kthread+0x1d1/0x210 kernel/kthread.c:389 ret_from_fork+0x4b/0x60 arch/x86/kernel/process.c:147 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 value changed: 0x00000000000c3500 -> 0x00000000000c5c10 Reported by Kernel Concurrency Sanitizer on: CPU: 0 UID: 0 PID: 2003 Comm: kworker/u8:6 Not tainted 6.11.0-syzkaller-11653-g3630400697a3 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Workqueue: events_unbound flush_to_ldisc ==================================================================