[syzbot] [mtd?] WARNING: zero-size vmalloc in ubi_read_volume_table

Zhihao Cheng chengzhihao1 at huawei.com
Sat Apr 6 23:31:06 PDT 2024


在 2024/4/2 0:50, syzbot 写道:
> Hello,
> 
> syzbot found the following issue on:
> 
> HEAD commit:    fe46a7dd189e Merge tag 'sound-6.9-rc1' of git://git.kernel..
> git tree:       upstream
> console+strace: https://syzkaller.appspot.com/x/log.txt?x=10223ae5180000
> kernel config:  https://syzkaller.appspot.com/x/.config?x=aef2a55903e5791c
> dashboard link: https://syzkaller.appspot.com/bug?extid=f516089d7815b10197c9
> compiler:       gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40
> syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=13668b21180000
> C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=10a6e21d180000
> 
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/089e25869df5/disk-fe46a7dd.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/423b1787914f/vmlinux-fe46a7dd.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/4c043e30c07d/bzImage-fe46a7dd.xz
> 
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+f516089d7815b10197c9 at syzkaller.appspotmail.com
> 
> ubi0: scanning is finished
> ubi0: empty MTD device detected
> ------------[ cut here ]------------
> WARNING: CPU: 0 PID: 5062 at mm/vmalloc.c:3319 __vmalloc_node_range+0x1065/0x1540 mm/vmalloc.c:3319
> Modules linked in:
> CPU: 0 PID: 5062 Comm: syz-executor167 Not tainted 6.8.0-syzkaller-08951-gfe46a7dd189e #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
> RIP: 0010:__vmalloc_node_range+0x1065/0x1540 mm/vmalloc.c:3319
> Code: 48 8b 7d 08 e8 bc db ff ff 48 39 c5 0f 85 f3 02 00 00 e8 5e 9e b2 ff 48 89 ef e8 26 8f 02 00 e9 c2 f9 ff ff e8 4c 9e b2 ff 90 <0f> 0b 90 31 db e8 41 9e b2 ff 48 b8 00 00 00 00 00 fc ff df 4d 8d
> RSP: 0018:ffffc900033df918 EFLAGS: 00010293
> RAX: 0000000000000000 RBX: dffffc0000000000 RCX: ffffffff81da4ac2
> RDX: ffff88801976da00 RSI: ffffffff81da5a64 RDI: 0000000000000007
> RBP: ffffffff85f10bf9 R08: 0000000000000007 R09: 0000000000000000
> R10: 0000000000000000 R11: ffffffff8ae00126 R12: 0000000000000000
> R13: 1ffff9200067bf3e R14: 0000000000000000 R15: ffff88802ef1a600
> FS:  000055556b89e380(0000) GS:ffff8880b9400000(0000) knlGS:0000000000000000
> CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 000000000045e620 CR3: 0000000022954000 CR4: 00000000003506f0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
> Call Trace:
>   <TASK>
>   __vmalloc_node mm/vmalloc.c:3457 [inline]
>   vzalloc+0x6b/0x90 mm/vmalloc.c:3530
>   create_empty_lvol drivers/mtd/ubi/vtbl.c:490 [inline]
>   ubi_read_volume_table+0x639/0x2a30 drivers/mtd/ubi/vtbl.c:812
>   ubi_attach+0x1a2f/0x4af0 drivers/mtd/ubi/attach.c:1601
>   ubi_attach_mtd_dev+0x1659/0x3950 drivers/mtd/ubi/build.c:1000
>   ctrl_cdev_ioctl+0x339/0x3d0 drivers/mtd/ubi/cdev.c:1043
>   vfs_ioctl fs/ioctl.c:51 [inline]
>   __do_sys_ioctl fs/ioctl.c:904 [inline]
>   __se_sys_ioctl fs/ioctl.c:890 [inline]
>   __x64_sys_ioctl+0x193/0x220 fs/ioctl.c:890
>   do_syscall_x64 arch/x86/entry/common.c:52 [inline]
>   do_syscall_64+0xd2/0x260 arch/x86/entry/common.c:83
>   entry_SYSCALL_64_after_hwframe+0x6d/0x75
> RIP: 0033:0x7fbab2531369
> Code: 48 83 c4 28 c3 e8 37 17 00 00 0f 1f 80 00 00 00 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 b8 ff ff ff f7 d8 64 89 01 48
> RSP: 002b:00007ffcb56bd0c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
> RAX: ffffffffffffffda RBX: 00007ffcb56bd298 RCX: 00007fbab2531369
> RDX: 0000000020000504 RSI: 0000000040186f40 RDI: 0000000000000003
> RBP: 00007fbab25a4610 R08: 0000000000000000 R09: 00007ffcb56bd298
> R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001
> R13: 00007ffcb56bd288 R14: 0000000000000001 R15: 0000000000000001
>   </TASK>
> 
> 
> ---
> 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 at 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 syzbot to run the reproducer, reply with:
> #syz test: git://repo/address.git branch-or-commit-hash
> If you attach or paste a git patch, syzbot will apply it before testing.
> 
> 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
> .
> 

It's weird, commit fe46a7dd189e2("Merge tag 'sound-6.9-rc1' of ..") is 
ahead of commit 68a24aba7c593eaf("ubi: Check for too small LEB size in 
VTBL code") according to 'git log', but 68a24aba7c593eaf("ubi: Check for 
too small LEB size in VTBL code") is not applied after reseting to 
fe46a7dd189e2("Merge tag 'sound-6.9-rc1' of ..").
Whatever, the problem has been fixed by 68a24aba7c593eaf("ubi: Check for 
too small LEB size in VTBL code").




More information about the linux-mtd mailing list