Kernel bug: BUG: unable to handle kernel paging request in uinput_destroy_device
Subsystem: input
Status: open

Crash report:
BUG: unable to handle page fault for address: fffffffffffffff8
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD df3d067 
P4D df3d067 
PUD df3f067 
PMD 0 

Oops: Oops: 0000 [#1] SMP KASAN PTI
CPU: 1 UID: 0 PID: 6106 Comm: syz.0.45 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/02/2025
RIP: 0010:swake_up_locked kernel/sched/swait.c:30 [inline]
RIP: 0010:complete_with_flags kernel/sched/completion.c:29 [inline]
RIP: 0010:complete+0x99/0x1b0 kernel/sched/completion.c:52
Code: 89 e7 e8 8a 4e 8b 00 4d 8b 3c 24 4d 39 e7 0f 84 d4 00 00 00 49 8d 7f f8 48 89 f8 48 c1 e8 03 80 3c 28 00 74 05 e8 67 4e 8b 00 <49> 8b 7f f8 be 03 00 00 00 31 d2 e8 17 5c f6 ff 4c 89 ff e8 9f eb
RSP: 0018:ffffc90003a3fcd8 EFLAGS: 00010046

RAX: 1fffffffffffffff RBX: ffffc90003bafa58 RCX: dffffc0000000000
RDX: 0000000000000001 RSI: 0000000000000004 RDI: fffffffffffffff8
RBP: dffffc0000000000 R08: 0000000000000003 R09: 0000000000000004
R10: dffffc0000000000 R11: fffff52000747f78 R12: ffffc90003bafa98
R13: 0000000000000001 R14: 0000000000000a06 R15: 0000000000000000
FS:  0000555564ca1500(0000) GS:ffff888125e2b000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: fffffffffffffff8 CR3: 000000007959e000 CR4: 00000000003526f0
Call Trace:
 <TASK>
 uinput_flush_requests drivers/input/misc/uinput.c:213 [inline]
 uinput_destroy_device+0x11a/0x8c0 drivers/input/misc/uinput.c:298
 uinput_release+0x3b/0x50 drivers/input/misc/uinput.c:758
 __fput+0x44c/0xa70 fs/file_table.c:468
 task_work_run+0x1d4/0x260 kernel/task_work.c:227
 resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
 exit_to_user_mode_loop+0xe9/0x130 kernel/entry/common.c:43
 exit_to_user_mode_prepare include/linux/irq-entry-common.h:225 [inline]
 syscall_exit_to_user_mode_work include/linux/entry-common.h:175 [inline]
 syscall_exit_to_user_mode include/linux/entry-common.h:210 [inline]
 do_syscall_64+0x2bd/0xfa0 arch/x86/entry/syscall_64.c:100
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fe54718eec9
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe72996ff8 EFLAGS: 00000246
 ORIG_RAX: 00000000000001b4
RAX: 0000000000000000 RBX: 000000000001bc2c RCX: 00007fe54718eec9
RDX: 0000000000000000 RSI: 000000000000001e RDI: 0000000000000003
RBP: 00007fe5473e7da0 R08: 0000000000000001 R09: 00000006729972ef
R10: 0000001b2f220000 R11: 0000000000000246 R12: 00007fe5473e5fac
R13: 00007fe5473e5fa0 R14: ffffffffffffffff R15: 00007ffe72997110
 </TASK>
Modules linked in:
CR2: fffffffffffffff8
---[ end trace 0000000000000000 ]---
RIP: 0010:swake_up_locked kernel/sched/swait.c:30 [inline]
RIP: 0010:complete_with_flags kernel/sched/completion.c:29 [inline]
RIP: 0010:complete+0x99/0x1b0 kernel/sched/completion.c:52
Code: 89 e7 e8 8a 4e 8b 00 4d 8b 3c 24 4d 39 e7 0f 84 d4 00 00 00 49 8d 7f f8 48 89 f8 48 c1 e8 03 80 3c 28 00 74 05 e8 67 4e 8b 00 <49> 8b 7f f8 be 03 00 00 00 31 d2 e8 17 5c f6 ff 4c 89 ff e8 9f eb
RSP: 0018:ffffc90003a3fcd8 EFLAGS: 00010046

RAX: 1fffffffffffffff RBX: ffffc90003bafa58 RCX: dffffc0000000000
RDX: 0000000000000001 RSI: 0000000000000004 RDI: fffffffffffffff8
RBP: dffffc0000000000 R08: 0000000000000003 R09: 0000000000000004
R10: dffffc0000000000 R11: fffff52000747f78 R12: ffffc90003bafa98
R13: 0000000000000001 R14: 0000000000000a06 R15: 0000000000000000
FS:  0000555564ca1500(0000) GS:ffff888125e2b000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: fffffffffffffff8 CR3: 000000007959e000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
   0:	89 e7                	mov    %esp,%edi
   2:	e8 8a 4e 8b 00       	call   0x8b4e91
   7:	4d 8b 3c 24          	mov    (%r12),%r15
   b:	4d 39 e7             	cmp    %r12,%r15
   e:	0f 84 d4 00 00 00    	je     0xe8
  14:	49 8d 7f f8          	lea    -0x8(%r15),%rdi
  18:	48 89 f8             	mov    %rdi,%rax
  1b:	48 c1 e8 03          	shr    $0x3,%rax
  1f:	80 3c 28 00          	cmpb   $0x0,(%rax,%rbp,1)
  23:	74 05                	je     0x2a
  25:	e8 67 4e 8b 00       	call   0x8b4e91
* 2a:	49 8b 7f f8          	mov    -0x8(%r15),%rdi <-- trapping instruction
  2e:	be 03 00 00 00       	mov    $0x3,%esi
  33:	31 d2                	xor    %edx,%edx
  35:	e8 17 5c f6 ff       	call   0xfff65c51
  3a:	4c 89 ff             	mov    %r15,%rdi
  3d:	e8                   	.byte 0xe8
  3e:	9f                   	lahf
  3f:	eb                   	.byte 0xeb