WARNING in input_mt_init_slots
From: Yikebaer Aizezi
Date: Tue Aug 15 2023 - 02:03:16 EST
Hello,
When using Healer to fuzz the Latest Linux-6.5-rc6, the following crash
was triggered.
HEAD commit: 2ccdd1b13c591d306f0401d98dedc4bdcd02b421 (tag: v6.5-rc6)
git tree: upstream
console output:
https://drive.google.com/file/d/1p6sC8jhTxlxT-anHvbhNJ-rihKofu0uy/view?usp=drive_link
kernel config:https://drive.google.com/file/d/1RP3sNB7CaYM2oxrf7v0Bp4j34XDtxHzZ/view?usp=drive_link
C reproducer:https://drive.google.com/file/d/1P3pPooAd9imQiZmFfpA3IpS40ppnCabP/view?usp=drive_link
Syzlang reproducer:
https://drive.google.com/file/d/1HzcnS72ho_yC8oh8Ax4nSRC6JfJ6hpaY/view?usp=drive_link
If you fix this issue, please add the following tag to the commit:
Reported-by: Yikebaer Aizezi <yikebaer61@xxxxxxxxx>
------------[ cut here ]------------
WARNING: CPU: 1 PID: 8390 at mm/page_alloc.c:4453
__alloc_pages+0x39e/0x490 mm/page_alloc.c:4453
Modules linked in:
CPU: 1 PID: 8390 Comm: syz-executor Not tainted 6.5.0-rc6 #1
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
rel-1.12.0-59-gc9ba5276e321-prebuilt.qemu.org 04/01/2014
RIP: 0010:__alloc_pages+0x39e/0x490 mm/page_alloc.c:4453
Code: ff ff 00 0f 84 33 fe ff ff 80 ce 01 e9 2b fe ff ff 83 fe 0a 0f
86 3e fd ff ff 80 3d 39 b4 3a 0c 00 75 09 c6 05 30 b4 3a 0c 01 <0f> 0b
45 31 f6 e9 97 fe ff ff e8 43 59 a4 ff 84 c0 0f 85 8a fe ff
RSP: 0018:ffffc90004a1fbb0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 1ffff92000943f77 RCX: 0000000000000000
RDX: 0000000000000001 RSI: 0000000000000014 RDI: 0000000000000000
RBP: 0000000000040dc0 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000002000001 R11: 0000000000000001 R12: 0000000000000014
R13: 0000000000000000 R14: 0000000000040dc0 R15: 0000000000000001
FS: 00007f0f55f7d640(0000) GS:ffff888135c00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f0f54fc5b9c CR3: 000000010fc79000 CR4: 0000000000750ee0
PKRU: 55555554
Call Trace:
<TASK>
__alloc_pages_node include/linux/gfp.h:237 [inline]
alloc_pages_node include/linux/gfp.h:260 [inline]
__kmalloc_large_node+0x94/0x1d0 mm/slab_common.c:1126
__do_kmalloc_node mm/slab_common.c:973 [inline]
__kmalloc+0x100/0x190 mm/slab_common.c:998
kmalloc include/linux/slab.h:586 [inline]
kzalloc include/linux/slab.h:703 [inline]
input_mt_init_slots drivers/input/input-mt.c:50 [inline]
input_mt_init_slots+0xd9/0x570 drivers/input/input-mt.c:39
uinput_create_device drivers/input/misc/uinput.c:328 [inline]
uinput_ioctl_handler.isra.0+0x16a2/0x1cf0 drivers/input/misc/uinput.c:904
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:870 [inline]
__se_sys_ioctl fs/ioctl.c:856 [inline]
__x64_sys_ioctl+0x199/0x210 fs/ioctl.c:856
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f0f54e9442d
Code: 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 f3 0f 1e fa 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 b4 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f0f55f7d048 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007f0f54fcc0a0 RCX: 00007f0f54e9442d
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000006
RBP: 00007f0f54f014b8 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f0f54f00b51
R13: 000000000000000b R14: 00007f0f54fcc0a0 R15: 00007f0f55f5d000
</TASK>
Modules linked in:
CPU: 1 PID: 8390 Comm: syz-executor Not tainted 6.5.0-rc6 #1
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
rel-1.12.0-59-gc9ba5276e321-prebuilt.qemu.org 04/01/2014
RIP: 0010:__alloc_pages+0x39e/0x490 mm/page_alloc.c:4453
Code: ff ff 00 0f 84 33 fe ff ff 80 ce 01 e9 2b fe ff ff 83 fe 0a 0f
86 3e fd ff ff 80 3d 39 b4 3a 0c 00 75 09 c6 05 30 b4 3a 0c 01 <0f> 0b
45 31 f6 e9 97 fe ff ff e8 43 59 a4 ff 84 c0 0f 85 8a fe ff
RSP: 0018:ffffc90004a1fbb0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 1ffff92000943f77 RCX: 0000000000000000
RDX: 0000000000000001 RSI: 0000000000000014 RDI: 0000000000000000
RBP: 0000000000040dc0 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000002000001 R11: 0000000000000001 R12: 0000000000000014
R13: 0000000000000000 R14: 0000000000040dc0 R15: 0000000000000001
FS: 00007f0f55f7d640(0000) GS:ffff888135c00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f0f54fc5b9c CR3: 000000010fc79000 CR4: 0000000000750ee0
PKRU: 55555554
Call Trace:
<TASK>
__alloc_pages_node include/linux/gfp.h:237 [inline]
alloc_pages_node include/linux/gfp.h:260 [inline]
__kmalloc_large_node+0x94/0x1d0 mm/slab_common.c:1126
__do_kmalloc_node mm/slab_common.c:973 [inline]
__kmalloc+0x100/0x190 mm/slab_common.c:998
kmalloc include/linux/slab.h:586 [inline]
kzalloc include/linux/slab.h:703 [inline]
input_mt_init_slots drivers/input/input-mt.c:50 [inline]
input_mt_init_slots+0xd9/0x570 drivers/input/input-mt.c:39
uinput_create_device drivers/input/misc/uinput.c:328 [inline]
uinput_ioctl_handler.isra.0+0x16a2/0x1cf0 drivers/input/misc/uinput.c:904
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:870 [inline]
__se_sys_ioctl fs/ioctl.c:856 [inline]
__x64_sys_ioctl+0x199/0x210 fs/ioctl.c:856
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f0f54e9442d
Code: 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 f3 0f 1e fa 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 b4 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f0f55f7d048 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007f0f54fcc0a0 RCX: 00007f0f54e9442d
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000006
RBP: 00007f0f54f014b8 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f0f54f00b51
R13: 000000000000000b R14: 00007f0f54fcc0a0 R15: 00007f0f55f5d000
</TASK>
Kernel panic - not syncing: kernel: panic_on_warn set ...
CPU: 1 PID: 8390 Comm: syz-executor Not tainted 6.5.0-rc6 #1
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS
rel-1.12.0-59-gc9ba5276e321-prebuilt.qemu.org 04/01/2014
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xd5/0x150 lib/dump_stack.c:106
panic+0x67e/0x730 kernel/panic.c:340
check_panic_on_warn+0xad/0xb0 kernel/panic.c:236
__warn+0xee/0x390 kernel/panic.c:673
__report_bug lib/bug.c:199 [inline]
report_bug+0x2d9/0x500 lib/bug.c:219
handle_bug+0x3c/0x70 arch/x86/kernel/traps.c:326
exc_invalid_op+0x14/0x40 arch/x86/kernel/traps.c:347
asm_exc_invalid_op+0x16/0x20 arch/x86/include/asm/idtentry.h:568
RIP: 0010:__alloc_pages+0x39e/0x490 mm/page_alloc.c:4453
Code: ff ff 00 0f 84 33 fe ff ff 80 ce 01 e9 2b fe ff ff 83 fe 0a 0f
86 3e fd ff ff 80 3d 39 b4 3a 0c 00 75 09 c6 05 30 b4 3a 0c 01 <0f> 0b
45 31 f6 e9 97 fe ff ff e8 43 59 a4 ff 84 c0 0f 85 8a fe ff
RSP: 0018:ffffc90004a1fbb0 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 1ffff92000943f77 RCX: 0000000000000000
RDX: 0000000000000001 RSI: 0000000000000014 RDI: 0000000000000000
RBP: 0000000000040dc0 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000002000001 R11: 0000000000000001 R12: 0000000000000014
R13: 0000000000000000 R14: 0000000000040dc0 R15: 0000000000000001
__alloc_pages_node include/linux/gfp.h:237 [inline]
alloc_pages_node include/linux/gfp.h:260 [inline]
__kmalloc_large_node+0x94/0x1d0 mm/slab_common.c:1126
__do_kmalloc_node mm/slab_common.c:973 [inline]
__kmalloc+0x100/0x190 mm/slab_common.c:998
kmalloc include/linux/slab.h:586 [inline]
kzalloc include/linux/slab.h:703 [inline]
input_mt_init_slots drivers/input/input-mt.c:50 [inline]
input_mt_init_slots+0xd9/0x570 drivers/input/input-mt.c:39
uinput_create_device drivers/input/misc/uinput.c:328 [inline]
uinput_ioctl_handler.isra.0+0x16a2/0x1cf0 drivers/input/misc/uinput.c:904
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:870 [inline]
__se_sys_ioctl fs/ioctl.c:856 [inline]
__x64_sys_ioctl+0x199/0x210 fs/ioctl.c:856
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f0f54e9442d
Code: 02 b8 ff ff ff ff c3 66 0f 1f 44 00 00 f3 0f 1e fa 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 b4 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f0f55f7d048 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007f0f54fcc0a0 RCX: 00007f0f54e9442d
RDX: 0000000000000000 RSI: 0000000000005501 RDI: 0000000000000006
RBP: 00007f0f54f014b8 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f0f54f00b51
R13: 000000000000000b R14: 00007f0f54fcc0a0 R15: 00007f0f55f5d000
</TASK>
Dumping ftrace buffer:
(ftrace buffer empty)
Kernel Offset: disabled
Rebooting in 1 seconds..