================================================================== BUG: KCSAN: data-race in cypress_send_ext_cmd / psmouse_interrupt write to 0xffff88810257bce1 of 1 bytes by interrupt on cpu 0: psmouse_interrupt+0x33c/0x930 drivers/input/mouse/psmouse-base.c:387 serio_interrupt+0x5d/0xe0 drivers/input/serio/serio.c:1002 i8042_interrupt+0x39e/0x720 drivers/input/serio/i8042.c:602 __handle_irq_event_percpu+0x93/0x3f0 kernel/irq/handle.c:156 handle_irq_event_percpu kernel/irq/handle.c:196 [inline] handle_irq_event+0xb0/0x160 kernel/irq/handle.c:213 handle_edge_irq+0x17e/0x600 kernel/irq/chip.c:819 generic_handle_irq_desc include/linux/irqdesc.h:158 [inline] handle_irq arch/x86/kernel/irq.c:231 [inline] __common_interrupt+0x38/0xb0 arch/x86/kernel/irq.c:250 common_interrupt+0x73/0x90 arch/x86/kernel/irq.c:240 asm_common_interrupt+0x1e/0x40 arch/x86/include/asm/idtentry.h:638 is_atomic kernel/kcsan/core.c:253 [inline] should_watch kernel/kcsan/core.c:266 [inline] check_access kernel/kcsan/core.c:642 [inline] __tsan_read8+0x138/0x180 kernel/kcsan/core.c:864 PageMemcgKmem include/linux/memcontrol.h:539 [inline] page_memcg include/linux/memcontrol.h:453 [inline] unlock_page_memcg+0x2e/0xe0 mm/memcontrol.c:2039 page_remove_rmap+0x1de/0x230 mm/rmap.c:1387 zap_pte_range+0x583/0xe20 mm/memory.c:1270 zap_pmd_range mm/memory.c:1374 [inline] zap_pud_range mm/memory.c:1403 [inline] zap_p4d_range mm/memory.c:1424 [inline] unmap_page_range+0x2dc/0x3d0 mm/memory.c:1445 unmap_single_vma+0x157/0x210 mm/memory.c:1490 unmap_vmas+0xc0/0x170 mm/memory.c:1522 exit_mmap+0x1be/0x400 mm/mmap.c:3208 __mmput+0x27/0x1c0 kernel/fork.c:1096 mmput+0x3d/0x50 kernel/fork.c:1117 exit_mm+0x360/0x450 kernel/exit.c:502 do_exit+0x3ff/0x1560 kernel/exit.c:813 do_group_exit+0xce/0x1a0 kernel/exit.c:923 get_signal+0xfc3/0x1610 kernel/signal.c:2835 arch_do_signal_or_restart+0x2a/0x220 arch/x86/kernel/signal.c:789 handle_signal_work kernel/entry/common.c:147 [inline] exit_to_user_mode_loop kernel/entry/common.c:171 [inline] exit_to_user_mode_prepare+0x109/0x190 kernel/entry/common.c:208 __syscall_exit_to_user_mode_work kernel/entry/common.c:290 [inline] syscall_exit_to_user_mode+0x20/0x40 kernel/entry/common.c:301 do_syscall_64+0x56/0x90 arch/x86/entry/common.c:57 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffff88810257bce1 of 1 bytes by task 789 on cpu 1: cypress_ps2_read_cmd_status drivers/input/mouse/cypress_ps2.c:120 [inline] cypress_send_ext_cmd+0x1f2/0x490 drivers/input/mouse/cypress_ps2.c:189 cypress_detect+0x32/0x100 drivers/input/mouse/cypress_ps2.c:205 psmouse_do_detect drivers/input/mouse/psmouse-base.c:1009 [inline] psmouse_try_protocol drivers/input/mouse/psmouse-base.c:1023 [inline] psmouse_extensions+0xa03/0x1790 drivers/input/mouse/psmouse-base.c:1146 __psmouse_reconnect+0x31e/0x620 drivers/input/mouse/psmouse-base.c:1728 psmouse_reconnect+0x13/0x20 drivers/input/mouse/psmouse-base.c:1766 serio_reconnect_driver drivers/input/serio/serio.c:59 [inline] serio_reconnect_port drivers/input/serio/serio.c:588 [inline] serio_handle_event+0x6be/0xc20 drivers/input/serio/serio.c:214 process_one_work+0x3e9/0x8f0 kernel/workqueue.c:2276 worker_thread+0x636/0xae0 kernel/workqueue.c:2422 kthread+0x1d0/0x1f0 kernel/kthread.c:313 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:294 value changed: 0x00 -> 0x01 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 789 Comm: kworker/1:4 Not tainted 5.13.0-rc5-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events_long serio_handle_event ==================================================================