bisecting fixing commit since 13d2ce42de8cb98ff952f8de6307f896203854c2 building syzkaller on c2c1d1dd603b7d66d283253ffbd61b8692712bd2 testing commit 13d2ce42de8cb98ff952f8de6307f896203854c2 with gcc (GCC) 8.4.1 20210217 kernel signature: ac20d9eac9d3c47127250c8bea4b2620d91ca0f42e7c3dc50c6eff313ae33cf3 run #0: crashed: kernel BUG in iput run #1: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop0] run #2: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop4] run #3: crashed: kernel BUG in iput run #4: crashed: kernel BUG in corrupted run #5: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop4] run #6: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop2] run #7: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop5] run #8: crashed: kernel BUG in corrupted run #9: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop2] run #10: crashed: kernel BUG in corrupted run #11: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop3] run #12: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop1] run #13: crashed: kernel BUG in iput run #14: crashed: kernel BUG in iput run #15: crashed: kernel BUG in corrupted run #16: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop4] run #17: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop1] run #18: crashed: kernel BUG in corrupted run #19: crashed: kernel BUG in iput testing current HEAD 030194a5b292bb7613407668d85af0b987bb9839 testing commit 030194a5b292bb7613407668d85af0b987bb9839 with gcc (GCC) 8.4.1 20210217 kernel signature: 70a03d9fff7567d8b29ab5de52e3a673015e9600cbe3e9dc2bd00afd03b942ee run #0: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop0] run #1: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop1] run #2: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop3] run #3: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop5] run #4: crashed: kernel BUG in iput run #5: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop0] run #6: crashed: kernel BUG in corrupted run #7: crashed: BUG: Dentry ADDR{i=0,n=/} still in use (-128) [unmount of erofs loop4] run #8: crashed: kernel BUG in corrupted run #9: crashed: kernel BUG in corrupted revisions tested: 2, total time: 30m36.962857722s (build: 22m48.792523434s, test: 7m10.196037001s) the crash still happens on HEAD commit msg: Linux 4.19.180 crash: kernel BUG in corrupted R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 R13: 0000000020000100 R14: 00007f3965d03000 R15: 0000000020000040 CPU: 0 PID: 10491 Comm: syz-executor.1 Not tainted 4.19.180-syzkaller #0 ------------[ cut here ]------------ Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 kernel BUG at fs/inode.c:1571! Call Trace: invalid opcode: 0000 [#1] PREEMPT SMP KASAN __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x17c/0x226 lib/dump_stack.c:118 CPU: 1 PID: 10490 Comm: syz-executor.0 Not tainted 4.19.180-syzkaller #0 fail_dump lib/fault-inject.c:51 [inline] should_fail.cold.2+0x5/0xa lib/fault-inject.c:149 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:iput+0x536/0x6b0 fs/inode.c:1571 Code: 48 b8 00 00 00 00 00 fc ff df 48 8b 55 c8 48 c1 ea 03 80 3c 02 00 0f 84 ac fd ff ff 48 8b 7d c8 e8 3f ad f0 ff e9 9e fd ff ff <0f> 0b 48 89 df e8 60 f9 ff ff 48 8b 7d d0 e8 17 08 08 06 e9 2a fe should_fail_alloc_page mm/page_alloc.c:3088 [inline] prepare_alloc_pages mm/page_alloc.c:4346 [inline] __alloc_pages_nodemask+0x23c/0x25a0 mm/page_alloc.c:4393 RSP: 0018:ffff88807f707a18 EFLAGS: 00010202 RAX: dffffc0000000000 RBX: ffff888080f13580 RCX: 1ffff11015eda1a5 RDX: 1ffff110101e26ca RSI: ffff8880af6d0d08 RDI: ffff888080f13580 RBP: ffff88807f707a60 R08: ffff8880af6d0d28 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: ffff888080f13580 R13: ffff8880921944c0 R14: 0000000000000000 R15: ffff888092194528 FS: 00007f3965d03700(0000) GS:ffff8880ba300000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f5a1365c000 CR3: 000000009bc04000 CR4: 00000000001406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 __alloc_pages include/linux/gfp.h:496 [inline] __alloc_pages_node include/linux/gfp.h:509 [inline] kmem_getpages mm/slab.c:1412 [inline] cache_grow_begin+0xa5/0x8b0 mm/slab.c:2682 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 cache_alloc_refill+0x2ac/0x380 mm/slab.c:3049 Call Trace: erofs_read_super drivers/staging/erofs/super.c:439 [inline] erofs_fill_super+0x10b4/0x1168 drivers/staging/erofs/super.c:499 ____cache_alloc mm/slab.c:3132 [inline] __do_cache_alloc mm/slab.c:3354 [inline] slab_alloc mm/slab.c:3389 [inline] kmem_cache_alloc+0x361/0x390 mm/slab.c:3557 erofs_read_super drivers/staging/erofs/super.c:414 [inline] erofs_fill_super+0xf63/0x1168 drivers/staging/erofs/super.c:499 mount_bdev+0x26f/0x330 fs/super.c:1158 mount_bdev+0x26f/0x330 fs/super.c:1158 erofs_mount+0x6a/0x90 drivers/staging/erofs/super.c:512 erofs_mount+0x6a/0x90 drivers/staging/erofs/super.c:512 mount_fs+0x7f/0x2b0 fs/super.c:1261 vfs_kern_mount.part.11+0x58/0x3d0 fs/namespace.c:961 mount_fs+0x7f/0x2b0 fs/super.c:1261 vfs_kern_mount fs/namespace.c:951 [inline] do_new_mount fs/namespace.c:2469 [inline] do_mount+0x376/0x2710 fs/namespace.c:2799 vfs_kern_mount.part.11+0x58/0x3d0 fs/namespace.c:961 vfs_kern_mount fs/namespace.c:951 [inline] do_new_mount fs/namespace.c:2469 [inline] do_mount+0x376/0x2710 fs/namespace.c:2799 ksys_mount+0xb1/0xd0 fs/namespace.c:3015 __do_sys_mount fs/namespace.c:3029 [inline] __se_sys_mount fs/namespace.c:3026 [inline] __x64_sys_mount+0xb9/0x150 fs/namespace.c:3026 ksys_mount+0xb1/0xd0 fs/namespace.c:3015 do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 __do_sys_mount fs/namespace.c:3029 [inline] __se_sys_mount fs/namespace.c:3026 [inline] __x64_sys_mount+0xb9/0x150 fs/namespace.c:3026 entry_SYSCALL_64_after_hwframe+0x49/0xbe do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 RIP: 0033:0x466f7a entry_SYSCALL_64_after_hwframe+0x49/0xbe Code: 48 c7 c2 bc ff ff ff f7 d8 64 89 02 b8 ff ff ff ff eb d2 e8 b8 04 00 00 0f 1f 84 00 00 00 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 RIP: 0033:0x466f7a RSP: 002b:00007f3965d02fa8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 Code: 48 c7 c2 bc ff ff ff f7 d8 64 89 02 b8 ff ff ff ff eb d2 e8 b8 04 00 00 0f 1f 84 00 00 00 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 0000000000466f7a RSP: 002b:00007f5a1365afa8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f3965d03000 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 0000000000466f7a RBP: 00007f3965d03040 R08: 00007f3965d03040 R09: 0000000020000000 RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f5a1365b000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 RBP: 00007f5a1365b040 R08: 00007f5a1365b040 R09: 0000000020000000 R13: 0000000020000100 R14: 00007f3965d03000 R15: 0000000020000040 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 Modules linked in: R13: 0000000020000100 R14: 00007f5a1365b000 R15: 0000000020000040 ---[ end trace a8f8b46632f63ccc ]--- RIP: 0010:iput+0x536/0x6b0 fs/inode.c:1571 Code: 48 b8 00 00 00 00 00 fc ff df 48 8b 55 c8 48 c1 ea 03 80 3c 02 00 0f 84 ac fd ff ff 48 8b 7d c8 e8 3f ad f0 ff e9 9e fd ff ff <0f> 0b 48 89 df e8 60 f9 ff ff 48 8b 7d d0 e8 17 08 08 06 e9 2a fe erofs: mounted on /dev/loop1 with opts: . RSP: 0018:ffff88807f707a18 EFLAGS: 00010202 erofs: unmounted for /dev/loop1 RAX: dffffc0000000000 RBX: ffff888080f13580 RCX: 1ffff11015eda1a5 erofs: read_super, device -> /dev/loop2 erofs: options -> FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 CPU: 1 PID: 10511 Comm: syz-executor.2 Tainted: G D 4.19.180-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x17c/0x226 lib/dump_stack.c:118 fail_dump lib/fault-inject.c:51 [inline] should_fail.cold.2+0x5/0xa lib/fault-inject.c:149 __should_failslab+0xba/0xf0 mm/failslab.c:32 should_failslab+0x9/0x20 mm/slab_common.c:1588 slab_pre_alloc_hook mm/slab.h:424 [inline] slab_alloc mm/slab.c:3383 [inline] kmem_cache_alloc+0x47/0x390 mm/slab.c:3557 mempool_alloc_slab+0x3a/0x50 mm/mempool.c:505 mempool_alloc+0x118/0x320 mm/mempool.c:385 bio_alloc_bioset+0x1a5/0x520 block/bio.c:493 bio_alloc include/linux/bio.h:437 [inline] submit_bh_wbc+0xbe/0x6f0 fs/buffer.c:3064 submit_bh fs/buffer.c:3096 [inline] __bread_slow fs/buffer.c:1176 [inline] __bread_gfp+0xc9/0x190 fs/buffer.c:1369 sb_bread include/linux/buffer_head.h:309 [inline] superblock_read drivers/staging/erofs/super.c:102 [inline] erofs_read_super drivers/staging/erofs/super.c:356 [inline] erofs_fill_super+0x1fe/0x1168 drivers/staging/erofs/super.c:499 mount_bdev+0x26f/0x330 fs/super.c:1158 erofs_mount+0x6a/0x90 drivers/staging/erofs/super.c:512 mount_fs+0x7f/0x2b0 fs/super.c:1261 vfs_kern_mount.part.11+0x58/0x3d0 fs/namespace.c:961 vfs_kern_mount fs/namespace.c:951 [inline] do_new_mount fs/namespace.c:2469 [inline] do_mount+0x376/0x2710 fs/namespace.c:2799 RDX: 1ffff110101e26ca RSI: ffff8880af6d0d08 RDI: ffff888080f13580 ksys_mount+0xb1/0xd0 fs/namespace.c:3015 __do_sys_mount fs/namespace.c:3029 [inline] __se_sys_mount fs/namespace.c:3026 [inline] __x64_sys_mount+0xb9/0x150 fs/namespace.c:3026 do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x466f7a Code: 48 c7 c2 bc ff ff ff f7 d8 64 89 02 b8 ff ff ff ff eb d2 e8 b8 04 00 00 0f 1f 84 00 00 00 00 00 49 89 ca b8 a5 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 bc ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f04b2f4dfa8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RBP: ffff88807f707a60 R08: ffff8880af6d0d28 R09: 0000000000000000 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 0000000000466f7a RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f04b2f4e000 RBP: 00007f04b2f4e040 R08: 00007f04b2f4e040 R09: 0000000020000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 R13: 0000000020000100 R14: 00007f04b2f4e000 R15: 0000000020000040 erofs: root inode @ nid 36 R10: 0000000000000000 R11: 0000000000000000 R12: ffff888080f13580 erofs: mounted on /dev/loop2 with opts: . R13: ffff8880921944c0 R14: 0000000000000000 R15: ffff888092194528 FS: 00007f3965d03700(0000) GS:ffff8880ba300000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f465836f000 CR3: 000000009bc04000 CR4: 00000000001406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 erofs: read_super, device -> /dev/loop3 erofs: read_super, device -> /dev/loop4 FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 erofs: options -> DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400