bisecting fixing commit since b94de4d19498b454645b72d08a05d32fa9074fb5 building syzkaller on cba33199be220cbf61f7c0c8223d88a25a913d6f testing commit b94de4d19498b454645b72d08a05d32fa9074fb5 compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: b585e916b3c677bbe98a111f114866cd12c40cf604496c5e4ba8480124198bc7 run #0: crashed: kernel BUG in f2fs_get_meta_page_nofail run #1: crashed: kernel BUG in corrupted run #2: crashed: kernel BUG in f2fs_get_meta_page_nofail run #3: crashed: kernel BUG in f2fs_get_meta_page_nofail run #4: crashed: kernel BUG in f2fs_get_meta_page_nofail run #5: crashed: kernel BUG in f2fs_get_meta_page_nofail run #6: crashed: kernel BUG in f2fs_get_meta_page_nofail run #7: crashed: kernel BUG in f2fs_get_meta_page_nofail run #8: crashed: kernel BUG in f2fs_get_meta_page_nofail run #9: crashed: kernel BUG in f2fs_get_meta_page_nofail run #10: crashed: kernel BUG in f2fs_get_meta_page_nofail run #11: crashed: kernel BUG in f2fs_get_meta_page_nofail run #12: crashed: kernel BUG in f2fs_get_meta_page_nofail run #13: crashed: kernel BUG in f2fs_get_meta_page_nofail run #14: crashed: kernel BUG in f2fs_get_meta_page_nofail run #15: crashed: kernel BUG in f2fs_get_meta_page_nofail run #16: crashed: kernel BUG in f2fs_get_meta_page_nofail run #17: crashed: kernel BUG in f2fs_get_meta_page_nofail run #18: crashed: kernel BUG in f2fs_get_meta_page_nofail run #19: crashed: kernel BUG in f2fs_get_meta_page_nofail testing current HEAD b172b44fcb1771e083aad806fa96f3f60e2ddfac testing commit b172b44fcb1771e083aad806fa96f3f60e2ddfac compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: 81e68d24e8120ce4beeaff2a4c62e2b84afeced420087643a419362fb9e7d507 all runs: crashed: kernel BUG in f2fs_get_meta_page_nofail revisions tested: 2, total time: 23m5.132594314s (build: 16m11.895653768s, test: 6m26.568604987s) the crash still happens on HEAD commit msg: Linux 4.19.206 crash: kernel BUG in f2fs_get_meta_page_nofail attempt to access beyond end of device loop3: rw=12288, want=20488, limit=16368 loop5: rw=12288, want=20488, limit=16368 ------------[ cut here ]------------ attempt to access beyond end of device kernel BUG at fs/f2fs/checkpoint.c:127! invalid opcode: 0000 [#1] PREEMPT SMP KASAN attempt to access beyond end of device CPU: 0 PID: 9188 Comm: syz-executor.3 Not tainted 4.19.206-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:f2fs_get_meta_page_nofail+0x41/0x50 fs/f2fs/checkpoint.c:127 Code: 00 00 4c 89 ee 4c 89 e7 e8 dc bc ff ff 48 3d 00 f0 ff ff 76 17 48 83 f8 fb 75 05 83 eb 01 75 dd 31 f6 4c 89 e7 e8 cf f2 ff ff <0f> 0b 5b 41 5c 41 5d 5d c3 66 0f 1f 44 00 00 55 31 d2 48 89 e5 e8 loop0: rw=12288, want=20520, limit=16368 RSP: 0018:ffff8881dac07858 EFLAGS: 00010286 RAX: ffff8881d473d5c0 RBX: 0000000000000000 RCX: 1ffff1103b74d18f RDX: ffffffff00000001 RSI: 0000000000000004 RDI: ffffffff8bad8720 RBP: ffff8881dac07870 R08: 0000000000000000 R09: ffffffff8b5d5ba8 R10: ffff8881dba68d00 R11: 0000000000000001 R12: ffff8881eb0382c0 R13: 0000000000000a00 R14: ffff8881eb0382c0 R15: ffff8881d9229200 FS: 00007f534d5fe700(0000) GS:ffff8881f6400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000000055c071 CR3: 00000001eb0d6005 CR4: 00000000001606f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: get_current_nat_page+0x12d/0x1b0 fs/f2fs/node.c:116 __f2fs_build_free_nids fs/f2fs/node.c:2287 [inline] f2fs_build_free_nids+0x2a6/0xf30 fs/f2fs/node.c:2328 f2fs_build_node_manager+0x1fb8/0x2c30 fs/f2fs/node.c:3055 attempt to access beyond end of device f2fs_fill_super fs/f2fs/super.c:3022 [inline] f2fs_fill_super+0x31a3/0x70f0 fs/f2fs/super.c:2803 loop2: rw=12288, want=20488, limit=16368 mount_bdev+0x26f/0x330 fs/super.c:1158 f2fs_mount+0x10/0x20 fs/f2fs/super.c:3234 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:2492 [inline] do_mount+0x376/0x2630 fs/namespace.c:2822 loop1: rw=12288, want=20496, limit=16368 ksys_mount+0xb1/0xd0 fs/namespace.c:3038 __do_sys_mount fs/namespace.c:3052 [inline] __se_sys_mount fs/namespace.c:3049 [inline] __x64_sys_mount+0xb9/0x150 fs/namespace.c:3049 do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x466daa 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 attempt to access beyond end of device RSP: 002b:00007f534d5fdfa8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 0000000000466daa RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007f534d5fe000 RBP: 00007f534d5fe040 R08: 00007f534d5fe040 R09: 0000000020000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 R13: 0000000020000100 R14: 00007f534d5fe000 R15: 0000000020012400 Modules linked in: ---[ end trace f302ea2e615adfa5 ]--- wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50 RIP: 0010:f2fs_get_meta_page_nofail+0x41/0x50 fs/f2fs/checkpoint.c:127 wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50 Code: 00 00 4c 89 ee 4c 89 e7 e8 dc bc ff ff 48 3d 00 f0 ff ff 76 17 48 83 f8 fb 75 05 83 eb 01 75 dd 31 f6 4c 89 e7 e8 cf f2 ff ff <0f> 0b 5b 41 5c 41 5d 5d c3 66 0f 1f 44 00 00 55 31 d2 48 89 e5 e8 attempt to access beyond end of device RSP: 0018:ffff8881dac07858 EFLAGS: 00010286 attempt to access beyond end of device RAX: ffff8881d473d5c0 RBX: 0000000000000000 RCX: 1ffff1103b74d18f loop1: rw=12288, want=20504, limit=16368 RDX: ffffffff00000001 RSI: 0000000000000004 RDI: ffffffff8bad8720 loop5: rw=12288, want=20496, limit=16368 RBP: ffff8881dac07870 R08: 0000000000000000 R09: ffffffff8b5d5ba8 IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready R10: ffff8881dba68d00 R11: 0000000000000001 R12: ffff8881eb0382c0 attempt to access beyond end of device R13: 0000000000000a00 R14: ffff8881eb0382c0 R15: ffff8881d9229200 attempt to access beyond end of device FS: 00007f534d5fe700(0000) GS:ffff8881f6400000(0000) knlGS:0000000000000000 loop0: rw=12288, want=20528, limit=16368 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 attempt to access beyond end of device loop1: rw=12288, want=20512, limit=16368 loop0: rw=12288, want=20536, limit=16368 attempt to access beyond end of device attempt to access beyond end of device loop5: rw=12288, want=20504, limit=16368 attempt to access beyond end of device loop2: rw=12288, want=20488, limit=16368 loop4: rw=12288, want=20488, limit=16368 attempt to access beyond end of device attempt to access beyond end of device attempt to access beyond end of device loop0: rw=12288, want=20544, limit=16368 attempt to access beyond end of device loop2: rw=12288, want=20488, limit=16368 attempt to access beyond end of device loop2: rw=12288, want=20488, limit=16368 attempt to access beyond end of device loop2: rw=12288, want=20488, limit=16368 attempt to access beyond end of device loop2: rw=12288, want=20488, limit=16368 attempt to access beyond end of device loop2: rw=12288, want=20488, limit=16368 ------------[ cut here ]------------ loop4: rw=12288, want=20496, limit=16368 kernel BUG at fs/f2fs/checkpoint.c:127! CR2: 000000000055c071 CR3: 00000001eb0d6005 CR4: 00000000001606f0 attempt to access beyond end of device loop1: rw=12288, want=20520, limit=16368 loop4: rw=12288, want=20504, limit=16368 invalid opcode: 0000 [#2] PREEMPT SMP KASAN attempt to access beyond end of device CPU: 0 PID: 9211 Comm: syz-executor.2 Tainted: G D 4.19.206-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:f2fs_get_meta_page_nofail+0x41/0x50 fs/f2fs/checkpoint.c:127 Code: 00 00 4c 89 ee 4c 89 e7 e8 dc bc ff ff 48 3d 00 f0 ff ff 76 17 48 83 f8 fb 75 05 83 eb 01 75 dd 31 f6 4c 89 e7 e8 cf f2 ff ff <0f> 0b 5b 41 5c 41 5d 5d c3 66 0f 1f 44 00 00 55 31 d2 48 89 e5 e8 RSP: 0018:ffff8881d341f858 EFLAGS: 00010286 RAX: ffff8881eb0d0b00 RBX: 0000000000000000 RCX: 0000000000000000 RDX: ffffffff00000001 RSI: 0000000000000000 RDI: ffffffff8bad8720 RBP: ffff8881d341f870 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: ffff8881f31c8340 R13: 0000000000000a00 R14: ffff8881f31c8340 R15: ffff8881eac30040 FS: 00007fb8a1a81700(0000) GS:ffff8881f6400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000000055c071 CR3: 00000001eacf4004 CR4: 00000000001606f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: get_current_nat_page+0x12d/0x1b0 fs/f2fs/node.c:116 __f2fs_build_free_nids fs/f2fs/node.c:2287 [inline] f2fs_build_free_nids+0x2a6/0xf30 fs/f2fs/node.c:2328 loop4: rw=12288, want=20512, limit=16368 f2fs_build_node_manager+0x1fb8/0x2c30 fs/f2fs/node.c:3055 f2fs_fill_super fs/f2fs/super.c:3022 [inline] f2fs_fill_super+0x31a3/0x70f0 fs/f2fs/super.c:2803 attempt to access beyond end of device mount_bdev+0x26f/0x330 fs/super.c:1158 f2fs_mount+0x10/0x20 fs/f2fs/super.c:3234 mount_fs+0x7f/0x2b0 fs/super.c:1261 vfs_kern_mount.part.11+0x58/0x3d0 fs/namespace.c:961 loop4: rw=12288, want=20520, limit=16368 vfs_kern_mount fs/namespace.c:951 [inline] do_new_mount fs/namespace.c:2492 [inline] do_mount+0x376/0x2630 fs/namespace.c:2822 attempt to access beyond end of device ksys_mount+0xb1/0xd0 fs/namespace.c:3038 __do_sys_mount fs/namespace.c:3052 [inline] __se_sys_mount fs/namespace.c:3049 [inline] __x64_sys_mount+0xb9/0x150 fs/namespace.c:3049 do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x466daa loop4: rw=12288, want=20528, limit=16368 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:00007fb8a1a80fa8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 0000000020000200 RCX: 0000000000466daa RDX: 0000000020000000 RSI: 0000000020000100 RDI: 00007fb8a1a81000 RBP: 00007fb8a1a81040 R08: 00007fb8a1a81040 R09: 0000000020000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000020000000 R13: 0000000020000100 R14: 00007fb8a1a81000 R15: 0000000020012400 Modules linked in: attempt to access beyond end of device attempt to access beyond end of device loop4: rw=12288, want=20536, limit=16368 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 48 c7 c2 bc ff ff ff mov $0xffffffffffffffbc,%rdx 7: f7 d8 neg %eax 9: 64 89 02 mov %eax,%fs:(%rdx) c: b8 ff ff ff ff mov $0xffffffff,%eax 11: eb d2 jmp 0xffffffe5 13: e8 b8 04 00 00 callq 0x4d0 18: 0f 1f 84 00 00 00 00 nopl 0x0(%rax,%rax,1) 1f: 00 20: 49 89 ca mov %rcx,%r10 23: b8 a5 00 00 00 mov $0xa5,%eax 28: 0f 05 syscall * 2a: 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax <-- trapping instruction 30: 73 01 jae 0x33 32: c3 retq 33: 48 c7 c1 bc ff ff ff mov $0xffffffffffffffbc,%rcx 3a: f7 d8 neg %eax 3c: 64 89 01 mov %eax,%fs:(%rcx) 3f: 48 rex.W