All of lore.kernel.org
 help / color / mirror / Atom feed
* [syzbot] [kernel?] KMSAN: kernel-infoleak in do_insnlist_ioctl
@ 2025-07-21 19:30 syzbot
  0 siblings, 0 replies; 2+ messages in thread
From: syzbot @ 2025-07-21 19:30 UTC (permalink / raw)
  To: abbotti, hsweeten, linux-kernel, syzkaller-bugs

Hello,

syzbot found the following issue on:

HEAD commit:    e2291551827f Merge tag 'probes-fixes-v6.16-rc6' of git://g..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=110a9382580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=5227c65742122bdd
dashboard link: https://syzkaller.appspot.com/bug?extid=fb4362a104d45ab09cf9
compiler:       Debian clang version 20.1.7 (++20250616065708+6146a88f6049-1~exp1~20250616065826.132), Debian LLD 20.1.7

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/ae9623994cef/disk-e2291551.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/64b2bf4d3527/vmlinux-e2291551.xz
kernel image: https://storage.googleapis.com/syzbot-assets/05541379d4f6/bzImage-e2291551.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+fb4362a104d45ab09cf9@syzkaller.appspotmail.com

=====================================================
BUG: KMSAN: kernel-infoleak in instrument_copy_to_user include/linux/instrumented.h:114 [inline]
BUG: KMSAN: kernel-infoleak in _inline_copy_to_user include/linux/uaccess.h:196 [inline]
BUG: KMSAN: kernel-infoleak in _copy_to_user+0xcc/0x120 lib/usercopy.c:26
 instrument_copy_to_user include/linux/instrumented.h:114 [inline]
 _inline_copy_to_user include/linux/uaccess.h:196 [inline]
 _copy_to_user+0xcc/0x120 lib/usercopy.c:26
 copy_to_user include/linux/uaccess.h:225 [inline]
 do_insnlist_ioctl+0x596/0x890 drivers/comedi/comedi_fops.c:1572
 comedi_unlocked_ioctl+0x1c6b/0x1e00 drivers/comedi/comedi_fops.c:2253
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:907 [inline]
 __se_sys_ioctl+0x239/0x400 fs/ioctl.c:893
 __x64_sys_ioctl+0x97/0xe0 fs/ioctl.c:893
 x64_sys_call+0x1ebe/0x3db0 arch/x86/include/generated/asm/syscalls_64.h:17
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xd9/0x210 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Uninit was created at:
 slab_post_alloc_hook mm/slub.c:4154 [inline]
 slab_alloc_node mm/slub.c:4197 [inline]
 __do_kmalloc_node mm/slub.c:4327 [inline]
 __kmalloc_noprof+0x95f/0x1310 mm/slub.c:4340
 kmalloc_noprof include/linux/slab.h:909 [inline]
 kmalloc_array_noprof include/linux/slab.h:948 [inline]
 do_insnlist_ioctl+0x1b2/0x890 drivers/comedi/comedi_fops.c:1551
 comedi_unlocked_ioctl+0x1c6b/0x1e00 drivers/comedi/comedi_fops.c:2253
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:907 [inline]
 __se_sys_ioctl+0x239/0x400 fs/ioctl.c:893
 __x64_sys_ioctl+0x97/0xe0 fs/ioctl.c:893
 x64_sys_call+0x1ebe/0x3db0 arch/x86/include/generated/asm/syscalls_64.h:17
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xd9/0x210 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Bytes 4-583 of 584 are uninitialized
Memory access of size 584 starts at ffff888053394400

CPU: 1 UID: 0 PID: 22163 Comm: syz.9.4290 Not tainted 6.16.0-rc6-syzkaller-00037-ge2291551827f #0 PREEMPT(none) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
=====================================================


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzkaller@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [syzbot] [kernel?] KMSAN: kernel-infoleak in do_insnlist_ioctl
       [not found] <20250725112352.56640b40@ian-deb>
@ 2025-07-25 10:23 ` syzbot
  0 siblings, 0 replies; 2+ messages in thread
From: syzbot @ 2025-07-25 10:23 UTC (permalink / raw)
  To: abbotti; +Cc: abbotti, linux-kernel, syzkaller-bugs

> #syz test

This crash does not have a reproducer. I cannot test it.

>
> diff --git a/drivers/comedi/comedi_fops.c b/drivers/comedi/comedi_fops.c
> index 23b7178522ae..360fde417016 100644
> --- a/drivers/comedi/comedi_fops.c
> +++ b/drivers/comedi/comedi_fops.c
> @@ -1587,6 +1587,10 @@ static int do_insnlist_ioctl(struct comedi_device *dev,
>  				memset(&data[n], 0, (MIN_SAMPLES - n) *
>  						    sizeof(unsigned int));
>  			}
> +		} else {
> +			unsigned int n_min = max(n, (unsigned int)MIN_SAMPLES);
> +
> +			memset(data, 0, n_min * sizeof(unsigned int));
>  		}
>  		ret = parse_insn(dev, insns + i, data, file);
>  		if (ret < 0)
> @@ -1670,6 +1674,8 @@ static int do_insn_ioctl(struct comedi_device *dev,
>  			memset(&data[insn->n], 0,
>  			       (MIN_SAMPLES - insn->n) * sizeof(unsigned int));
>  		}
> +	} else {
> +		memset(data, 0, n_data * sizeof(unsigned int));
>  	}
>  	ret = parse_insn(dev, insn, data, file);
>  	if (ret < 0)

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-07-25 10:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20250725112352.56640b40@ian-deb>
2025-07-25 10:23 ` [syzbot] [kernel?] KMSAN: kernel-infoleak in do_insnlist_ioctl syzbot
2025-07-21 19:30 syzbot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.