syzbot


KCSAN: data-race in uhid_char_poll / uhid_char_read

Status: upstream: reported on 2025/04/02 00:01
Subsystems: input
[Documentation on labels]
Reported-by: syzbot+2775104a59cc23ddff54@syzkaller.appspotmail.com
First crash: 3d07h, last: 3d07h
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [input?] KCSAN: data-race in uhid_char_poll / uhid_char_read 0 (1) 2025/04/02 00:01

Sample crash report:
==================================================================
BUG: KCSAN: data-race in uhid_char_poll / uhid_char_read

read-write to 0xffff88811229d17d of 1 bytes by task 6915 on cpu 1:
 uhid_char_read+0x373/0x3f0 drivers/hid/uhid.c:711
 do_loop_readv_writev fs/read_write.c:845 [inline]
 vfs_readv+0x3e5/0x660 fs/read_write.c:1018
 do_readv+0xf7/0x230 fs/read_write.c:1078
 __do_sys_readv fs/read_write.c:1163 [inline]
 __se_sys_readv fs/read_write.c:1160 [inline]
 __x64_sys_readv+0x45/0x50 fs/read_write.c:1160
 x64_sys_call+0x2833/0x2e10 arch/x86/include/generated/asm/syscalls_64.h:20
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xc9/0x1c0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff88811229d17d of 1 bytes by task 6921 on cpu 0:
 uhid_char_poll+0x89/0xc0 drivers/hid/uhid.c:793
 vfs_poll include/linux/poll.h:82 [inline]
 __io_arm_poll_handler+0x1e5/0xd40 io_uring/poll.c:583
 io_poll_add+0x70/0xf0 io_uring/poll.c:893
 __io_issue_sqe io_uring/io_uring.c:1734 [inline]
 io_issue_sqe+0x15f/0xaf0 io_uring/io_uring.c:1753
 io_queue_sqe io_uring/io_uring.c:1969 [inline]
 io_req_task_submit+0x6a/0xc0 io_uring/io_uring.c:1371
 io_poll_task_func+0x74e/0xa70 io_uring/poll.c:-1
 io_handle_tw_list+0xce/0x1d0 io_uring/io_uring.c:1057
 tctx_task_work_run+0x6e/0x1c0 io_uring/io_uring.c:1121
 tctx_task_work+0x44/0x80 io_uring/io_uring.c:1139
 task_work_run+0x13c/0x1b0 kernel/task_work.c:227
 get_signal+0xe81/0x1000 kernel/signal.c:2808
 arch_do_signal_or_restart+0x9a/0x4b0 arch/x86/kernel/signal.c:337
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
 syscall_exit_to_user_mode+0x62/0x120 kernel/entry/common.c:218
 do_syscall_64+0xd6/0x1c0 arch/x86/entry/syscall_64.c:100
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x00 -> 0x01

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 6921 Comm: syz.3.927 Not tainted 6.14.0-syzkaller-11144-g1e7857b28020 #0 PREEMPT(voluntary) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
==================================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/04/01 07:53 upstream 1e7857b28020 36d76a97 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in uhid_char_poll / uhid_char_read
* Struck through repros no longer work on HEAD.