================================================================== BUG: KCSAN: data-race in cypress_send_ext_cmd / psmouse_interrupt write to 0xffff888107c0fee1 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 check_kcov_mode kernel/kcov.c:165 [inline] write_comp_data kernel/kcov.c:218 [inline] __sanitizer_cov_trace_cmp8+0x31/0x90 kernel/kcov.c:264 vm_normal_page+0x91/0x1b0 mm/memory.c:648 can_gather_numa_stats fs/proc/task_mmu.c:1748 [inline] gather_pte_stats+0x126/0x240 fs/proc/task_mmu.c:1815 walk_pmd_range mm/pagewalk.c:89 [inline] walk_pud_range mm/pagewalk.c:160 [inline] walk_p4d_range mm/pagewalk.c:193 [inline] walk_pgd_range mm/pagewalk.c:229 [inline] __walk_page_range+0x93f/0x10e0 mm/pagewalk.c:331 walk_page_vma+0x148/0x1d0 mm/pagewalk.c:482 show_numa_map+0x2cc/0x690 fs/proc/task_mmu.c:1902 seq_read_iter+0x60b/0x910 fs/seq_file.c:269 seq_read+0x221/0x260 fs/seq_file.c:159 do_loop_readv_writev fs/read_write.c:761 [inline] do_iter_read+0x2be/0x4b0 fs/read_write.c:803 vfs_readv fs/read_write.c:921 [inline] do_readv+0x13d/0x290 fs/read_write.c:958 __do_sys_readv fs/read_write.c:1049 [inline] __se_sys_readv fs/read_write.c:1046 [inline] __x64_sys_readv+0x41/0x50 fs/read_write.c:1046 do_syscall_64+0x4a/0x90 arch/x86/entry/common.c:47 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffff888107c0fee1 of 1 bytes by task 7950 on cpu 1: cypress_ps2_read_cmd_status drivers/input/mouse/cypress_ps2.c:120 [inline] cypress_send_ext_cmd+0x1ac/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 -> 0x02 Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 7950 Comm: kworker/1:4 Tainted: G W 5.13.0-rc4-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events_long serio_handle_event ================================================================== ================================================================== BUG: KCSAN: data-race in __ps2_command / ps2_handle_response write to 0xffff888107c0fe50 of 8 bytes by interrupt on cpu 0: ps2_handle_response+0x98/0x140 drivers/input/serio/libps2.c:466 psmouse_interrupt+0x6d4/0x930 drivers/input/mouse/psmouse-base.c:369 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 __raw_callee_save___pv_queued_spin_unlock+0xc/0x12 pv_queued_spin_unlock arch/x86/include/asm/paravirt.h:590 [inline] queued_spin_unlock arch/x86/include/asm/qspinlock.h:56 [inline] do_raw_spin_unlock include/linux/spinlock.h:212 [inline] __raw_spin_unlock include/linux/spinlock_api_smp.h:151 [inline] spin_unlock include/linux/spinlock.h:394 [inline] do_anonymous_page+0x411/0x8b0 mm/memory.c:3635 handle_pte_fault mm/memory.c:4365 [inline] __handle_mm_fault mm/memory.c:4502 [inline] handle_mm_fault+0x96f/0x1a70 mm/memory.c:4600 faultin_page mm/gup.c:908 [inline] __get_user_pages+0x947/0xee0 mm/gup.c:1127 populate_vma_page_range mm/gup.c:1460 [inline] __mm_populate+0x24d/0x380 mm/gup.c:1508 mm_populate include/linux/mm.h:2621 [inline] __do_sys_mlockall+0x24c/0x2d0 mm/mlock.c:798 __se_sys_mlockall mm/mlock.c:774 [inline] __x64_sys_mlockall+0x1a/0x20 mm/mlock.c:774 do_syscall_64+0x4a/0x90 arch/x86/entry/common.c:47 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffff888107c0fe50 of 8 bytes by task 7950 on cpu 1: __ps2_command+0x411/0xa40 drivers/input/serio/libps2.c:285 ps2_command+0x51/0x90 drivers/input/serio/libps2.c:332 intellimouse_detect drivers/input/mouse/psmouse-base.c:588 [inline] im_explorer_detect+0x93/0x310 drivers/input/mouse/psmouse-base.c:615 psmouse_do_detect drivers/input/mouse/psmouse-base.c:1009 [inline] psmouse_try_protocol drivers/input/mouse/psmouse-base.c:1023 [inline] psmouse_extensions+0xfb2/0x1790 drivers/input/mouse/psmouse-base.c:1215 __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: 0x000000000000000e -> 0x000000000000000a Reported by Kernel Concurrency Sanitizer on: CPU: 1 PID: 7950 Comm: kworker/1:4 Tainted: G W 5.13.0-rc4-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events_long serio_handle_event ==================================================================