================================================================== BUG: KCSAN: data-race in ps2_do_sendbyte / ps2_handle_ack write to 0xffff888103761040 of 8 bytes by interrupt on cpu 1: ps2_handle_ack+0x15a/0x350 drivers/input/serio/libps2.c:439 atkbd_interrupt+0xbf7/0xcd0 drivers/input/keyboard/atkbd.c:422 serio_interrupt+0x5d/0xe0 drivers/input/serio/serio.c:1001 i8042_interrupt+0x39e/0x720 drivers/input/serio/i8042.c:606 __handle_irq_event_percpu+0x92/0x450 kernel/irq/handle.c:158 handle_irq_event_percpu kernel/irq/handle.c:193 [inline] handle_irq_event+0x7b/0x110 kernel/irq/handle.c:210 handle_edge_irq+0x18e/0x5f0 kernel/irq/chip.c:817 generic_handle_irq_desc include/linux/irqdesc.h:158 [inline] handle_irq arch/x86/kernel/irq.c:231 [inline] __common_interrupt+0x60/0x100 arch/x86/kernel/irq.c:250 common_interrupt+0x9a/0xc0 arch/x86/kernel/irq.c:240 asm_common_interrupt+0x1e/0x40 arch_atomic64_read arch/x86/include/asm/atomic64_64.h:22 [inline] arch_atomic_long_read include/linux/atomic/atomic-long.h:29 [inline] atomic_long_read include/linux/atomic/atomic-instrumented.h:1266 [inline] find_watchpoint kernel/kcsan/core.c:129 [inline] check_access kernel/kcsan/core.c:726 [inline] __tsan_read8+0x3b/0x180 kernel/kcsan/core.c:1014 folio_test_anon include/linux/page-flags.h:651 [inline] PageAnon include/linux/page-flags.h:656 [inline] mm_counter include/linux/mm.h:2043 [inline] copy_present_pte+0x123/0x4a0 mm/memory.c:957 copy_pte_range+0x39e/0xd00 mm/memory.c:1071 copy_pmd_range mm/memory.c:1157 [inline] copy_pud_range mm/memory.c:1194 [inline] copy_p4d_range mm/memory.c:1218 [inline] copy_page_range+0x5ea/0x8f0 mm/memory.c:1291 dup_mmap+0x6eb/0xa60 kernel/fork.c:701 dup_mm+0x7c/0x210 kernel/fork.c:1521 copy_mm kernel/fork.c:1573 [inline] copy_process+0x160e/0x3100 kernel/fork.c:2234 kernel_clone+0x15c/0x670 kernel/fork.c:2639 __do_sys_clone kernel/fork.c:2756 [inline] __se_sys_clone kernel/fork.c:2740 [inline] __x64_sys_clone+0xc6/0xf0 kernel/fork.c:2740 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x2b/0x50 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffff888103761040 of 8 bytes by task 1908 on cpu 0: ps2_do_sendbyte+0x1ba/0x3b0 drivers/input/serio/libps2.c:45 __ps2_command+0x30d/0xa00 drivers/input/serio/libps2.c:273 ps2_command+0x51/0x90 drivers/input/serio/libps2.c:332 atkbd_set_repeat_rate drivers/input/keyboard/atkbd.c:583 [inline] atkbd_event_work+0x2d4/0x300 drivers/input/keyboard/atkbd.c:637 process_one_work+0x3e3/0x970 kernel/workqueue.c:2289 worker_thread+0x638/0xaa0 kernel/workqueue.c:2436 kthread+0x1bf/0x1e0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 value changed: 0x0000000000000001 -> 0x0000000000000000 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 1908 Comm: kworker/0:4 Not tainted 5.18.0-rc1-syzkaller-dirty #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events atkbd_event_work ==================================================================