> > On 12/31/24 2:10 PM, syzbot wrote: >> Hello, >> >> syzbot found the following issue on: >> >> HEAD commit: ccb98ccef0e5 Merge tag 'platform-drivers-x86-v6.13-4' of g.. >> git tree: upstream >> console output: https://syzkaller.appspot.com/x/log.txt?x=14d4f50f980000 >> kernel config: https://syzkaller.appspot.com/x/.config?x=86dd15278dbfe19f >> dashboard link: https://syzkaller.appspot.com/bug?extid=43f6243d6c4946b26405 >> compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 >> userspace arch: i386 >> >> Unfortunately, I don't have any reproducer for this issue yet. >> >> Downloadable assets: >> disk image (non-bootable): https://storage.googleapis.com/syzbot-assets/7feb34a89c2a/non_bootable_disk-ccb98cce.raw.xz >> vmlinux: https://storage.googleapis.com/syzbot-assets/75a6223b351c/vmlinux-ccb98cce.xz >> kernel image: https://storage.googleapis.com/syzbot-assets/beea89d50f58/bzImage-ccb98cce.xz >> >> IMPORTANT: if you fix the issue, please add the following tag to the commit: >> Reported-by: syzbot+43f6243d6c4946b26405@xxxxxxxxxxxxxxxxxxxxxxxxx >> >> BUG: kernel NULL pointer dereference, address: 0000000000000000 >> #PF: supervisor write access in kernel mode >> #PF: error_code(0x0002) - not-present page >> PGD 6a754067 P4D 6a754067 PUD 68142067 PMD 0 >> Oops: Oops: 0002 [#1] PREEMPT SMP KASAN NOPTI >> CPU: 0 UID: 0 PID: 7523 Comm: syz.2.395 Not tainted 6.13.0-rc5-syzkaller-00004-gccb98ccef0e5 #0 >> Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 >> RIP: 0010:memcpy+0xc/0x20 arch/x86/lib/memcpy_64.S:38 >> Code: e9 44 fd ff ff 66 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 48 89 f8 48 89 d1 <f3> a4 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 >> RSP: 0018:ffffc9000370f8b0 EFLAGS: 00010293 >> RAX: 0000000000000000 RBX: ffffc9000370fc50 RCX: 0000000000000004 >> RDX: 0000000000000004 RSI: ffff88804ef5d710 RDI: 0000000000000000 >> RBP: 0000000000000004 R08: 0000000000000005 R09: 0000000000000000 >> R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000004 >> R13: 0000000000000000 R14: 0000000000000004 R15: dffffc0000000000 >> FS: 0000000000000000(0000) GS:ffff88802b400000(0063) knlGS:00000000f5080b40 >> CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 >> CR2: 0000000000000000 CR3: 000000006ba72000 CR4: 0000000000352ef0 >> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 >> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 >> Call Trace: >> <TASK> >> fuse_copy_do fs/fuse/dev.c:809 [inline] >> fuse_copy_one+0x1cc/0x230 fs/fuse/dev.c:1065 >> fuse_copy_args+0x109/0x690 fs/fuse/dev.c:1083 >> copy_out_args fs/fuse/dev.c:1966 [inline] >> fuse_dev_do_write+0x1b0a/0x3100 fs/fuse/dev.c:2052 >> fuse_dev_write+0x160/0x1f0 fs/fuse/dev.c:2087 >> new_sync_write fs/read_write.c:586 [inline] >> vfs_write+0x5ae/0x1150 fs/read_write.c:679 >> ksys_write+0x12b/0x250 fs/read_write.c:731 >> do_syscall_32_irqs_on arch/x86/entry/common.c:165 [inline] >> __do_fast_syscall_32+0x73/0x120 arch/x86/entry/common.c:386 >> do_fast_syscall_32+0x32/0x80 arch/x86/entry/common.c:411 >> entry_SYSENTER_compat_after_hwframe+0x84/0x8e >> RIP: 0023:0xf708e579 >> Code: b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 00 00 00 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 8d b4 26 00 00 00 00 8d b4 26 00 00 00 00 >> RSP: 002b:00000000f5080500 EFLAGS: 00000293 ORIG_RAX: 0000000000000004 >> RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000020000700 >> RDX: 0000000000000014 RSI: 00000000f73c3ff4 RDI: 0000000000000000 >> RBP: 0000000020008380 R08: 0000000000000000 R09: 0000000000000000 >> R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000000 >> R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 >> </TASK> >> Modules linked in: >> CR2: 0000000000000000 >> ---[ end trace 0000000000000000 ]--- >> RIP: 0010:memcpy+0xc/0x20 arch/x86/lib/memcpy_64.S:38 >> Code: e9 44 fd ff ff 66 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 48 89 f8 48 89 d1 <f3> a4 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 >> RSP: 0018:ffffc9000370f8b0 EFLAGS: 00010293 >> RAX: 0000000000000000 RBX: ffffc9000370fc50 RCX: 0000000000000004 >> RDX: 0000000000000004 RSI: ffff88804ef5d710 RDI: 0000000000000000 >> RBP: 0000000000000004 R08: 0000000000000005 R09: 0000000000000000 >> R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000004 >> R13: 0000000000000000 R14: 0000000000000004 R15: dffffc0000000000 >> FS: 0000000000000000(0000) GS:ffff88802b400000(0063) knlGS:00000000f5080b40 >> CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 >> CR2: 0000000000000000 CR3: 000000006ba72000 CR4: 0000000000352ef0 >> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 >> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 >> ---------------- >> Code disassembly (best guess): >> 0: e9 44 fd ff ff jmp 0xfffffd49 >> 5: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) >> c: 00 00 >> e: 90 nop >> f: 90 nop >> 10: 90 nop >> 11: 90 nop >> 12: 90 nop >> 13: 90 nop >> 14: 90 nop >> 15: 90 nop >> 16: 90 nop >> 17: 90 nop >> 18: 90 nop >> 19: 90 nop >> 1a: 90 nop >> 1b: 90 nop >> 1c: 90 nop >> 1d: 90 nop >> 1e: f3 0f 1e fa endbr64 >> 22: 66 90 xchg %ax,%ax >> 24: 48 89 f8 mov %rdi,%rax >> 27: 48 89 d1 mov %rdx,%rcx >> * 2a: f3 a4 rep movsb %ds:(%rsi),%es:(%rdi) <-- trapping instruction >> 2c: c3 ret >> 2d: cc int3 >> 2e: cc int3 >> 2f: cc int3 >> 30: cc int3 >> 31: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1) >> 38: 00 00 00 00 >> 3c: 66 90 xchg %ax,%ax >> 3e: 90 nop >> 3f: 90 nop >> >> >> --- >> 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@xxxxxxxxxxxxxxxx. >> >> 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 >> > Bug origin in > > commit ebe559609d7829b52c6642b581860760984faf9d > Author: Al Viro <viro@xxxxxxxxxxxxxxxxxx> > Date: Fri Nov 15 10:30:14 2024 -0500 > > fs: get rid of __FMODE_NONOTIFY kludge > > #syz test This crash does not have a reproducer. I cannot test it. > > diff --git a/fs/notify/fanotify/fanotify_user.c > b/fs/notify/fanotify/fanotify_user.c > index 19435cd2c41f..6ff94e312232 100644 > --- a/fs/notify/fanotify/fanotify_user.c > +++ b/fs/notify/fanotify/fanotify_user.c > @@ -1624,8 +1624,8 @@ SYSCALL_DEFINE2(fanotify_init, unsigned int, > flags, unsigned int, event_f_flags) > file = anon_inode_getfile_fmode("[fanotify]", &fanotify_fops, > group, > f_flags, FMODE_NONOTIFY); > if (IS_ERR(file)) { > - fd = PTR_ERR(file); > put_unused_fd(fd); > + fd = PTR_ERR(file); > goto out_destroy_group; > } > fd_install(fd, file); >