================================================================== BUG: KCSAN: data-race in ps2_do_sendbyte / ps2_handle_ack write to 0xffff8881297c7840 of 8 bytes by interrupt on cpu 1: ps2_handle_ack+0x15a/0x350 drivers/input/serio/libps2.c:439 atkbd_interrupt+0xbf1/0xcd0 drivers/input/keyboard/atkbd.c:434 serio_interrupt+0x5d/0xe0 drivers/input/serio/serio.c:1002 i8042_interrupt+0x39e/0x720 drivers/input/serio/i8042.c:598 __handle_irq_event_percpu+0x16e/0x4f0 kernel/irq/handle.c:156 handle_irq_event_percpu kernel/irq/handle.c:196 [inline] handle_irq_event+0x94/0x140 kernel/irq/handle.c:213 handle_edge_irq+0x18e/0x5f0 kernel/irq/chip.c:830 asm_call_on_stack+0xf/0x20 arch/x86/entry/entry_64.S:711 __run_on_irqstack arch/x86/include/asm/irq_stack.h:22 [inline] run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:48 [inline] handle_irq arch/x86/kernel/irq.c:230 [inline] __common_interrupt arch/x86/kernel/irq.c:249 [inline] common_interrupt+0xf6/0x1e0 arch/x86/kernel/irq.c:239 asm_common_interrupt+0x1e/0x40 arch/x86/include/asm/idtentry.h:587 watchpoint_slot kernel/kcsan/encoding.h:83 [inline] find_watchpoint kernel/kcsan/core.c:106 [inline] check_access kernel/kcsan/core.c:566 [inline] __tsan_read8+0x12/0x180 kernel/kcsan/core.c:777 free_pages_and_swap_cache+0x48/0x1f0 mm/swap_state.c:294 tlb_batch_pages_flush mm/mmu_gather.c:49 [inline] tlb_flush_mmu_free mm/mmu_gather.c:242 [inline] tlb_flush_mmu+0x597/0x5f0 mm/mmu_gather.c:249 zap_pte_range+0x1289/0x1610 mm/memory.c:1155 zap_pmd_range mm/memory.c:1193 [inline] zap_pud_range mm/memory.c:1222 [inline] zap_p4d_range mm/memory.c:1243 [inline] unmap_page_range+0x751/0x870 mm/memory.c:1264 unmap_single_vma+0x157/0x210 mm/memory.c:1309 unmap_vmas+0xc0/0x150 mm/memory.c:1341 exit_mmap+0x1c7/0x3b0 mm/mmap.c:3150 __mmput+0xa2/0x220 kernel/fork.c:1093 mmput+0x38/0x40 kernel/fork.c:1114 exit_mm+0x2c8/0x330 kernel/exit.c:482 do_exit+0x415/0x16e0 kernel/exit.c:792 do_group_exit+0xcb/0x180 kernel/exit.c:903 get_signal+0x106d/0x1650 kernel/signal.c:2743 do_signal+0x25/0x270 arch/x86/kernel/signal.c:810 exit_to_usermode_loop arch/x86/entry/common.c:212 [inline] __prepare_exit_to_usermode+0x127/0x230 arch/x86/entry/common.c:246 __syscall_return_slowpath+0x47/0x60 arch/x86/entry/common.c:329 do_syscall_64+0x5d/0xb0 arch/x86/entry/common.c:368 entry_SYSCALL_64_after_hwframe+0x44/0xa9 read to 0xffff8881297c7840 of 8 bytes by task 12 on cpu 0: ps2_do_sendbyte+0x1a1/0x380 drivers/input/serio/libps2.c:45 __ps2_command+0x30d/0x9f0 drivers/input/serio/libps2.c:273 ps2_command+0x50/0x90 drivers/input/serio/libps2.c:332 atkbd_set_repeat_rate drivers/input/keyboard/atkbd.c:595 [inline] atkbd_event_work+0x2b6/0x2f0 drivers/input/keyboard/atkbd.c:649 process_one_work+0x3e1/0x9a0 kernel/workqueue.c:2269 worker_thread+0x665/0xbe0 kernel/workqueue.c:2415 kthread+0x20d/0x230 kernel/kthread.c:291 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:293 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 12 Comm: kworker/0:1 Not tainted 5.8.0-rc3-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events atkbd_event_work ==================================================================