gfs2: fsid=syz:syz.0: gfs2_check_dirent: name length is greater than space in dirent (first in block) gfs2: fsid=syz:syz.0: fatal: filesystem consistency error - inode = 12 2341, function = gfs2_dirent_scan, file = fs/gfs2/dir.c, line = 574 gfs2: fsid=syz:syz.0: G: s:SH n:2/925 f:aqob t:SH d:EX/0 a:0 v:0 r:3 m:20 p:1 gfs2: fsid=syz:syz.0: H: s:SH f:H e:0 p:5318 [syz.0.0] __gfs2_lookup+0x8f/0x270 fs/gfs2/inode.c:978 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000004: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000020-0x0000000000000027] CPU: 0 UID: 0 PID: 5319 Comm: syz.0.0 Not tainted 6.15.0-syzkaller-03478-gc89756bcf406 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 RIP: 0010:pid_is_meaningful fs/gfs2/glock.c:1468 [inline] RIP: 0010:dump_holder fs/gfs2/glock.c:2292 [inline] RIP: 0010:gfs2_dump_glock+0x1033/0x1c50 fs/gfs2/glock.c:2414 Code: 40 2f d0 8b be 4b 03 00 00 48 c7 c2 80 2f d0 8b e8 c2 b0 af fd 49 8d 5d 20 49 89 de 49 c1 ee 03 48 b8 00 00 00 00 00 fc ff df <41> 0f b6 04 06 84 c0 0f 85 28 06 00 00 48 89 5c 24 28 0f b7 1b 89 RSP: 0018:ffffc9000d636ac0 EFLAGS: 00010202 RAX: dffffc0000000000 RBX: 0000000000000021 RCX: 0000000000100000 RDX: ffffc9000f329000 RSI: 0000000000002632 RDI: 0000000000002633 RBP: ffffc9000d636db0 R08: 0000000000000000 R09: ffffffff83ee5d93 R10: dffffc0000000000 R11: fffffbfff1f3fbb7 R12: ffffffff83ee5d93 R13: 0000000000000001 R14: 0000000000000004 R15: 0000000000000000 FS: 00007f1a82def6c0(0000) GS:ffff88808d28f000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f1a82deefc8 CR3: 0000000042589000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: gfs2_consist_inode_i+0xf5/0x110 fs/gfs2/util.c:457 gfs2_dirent_scan+0x545/0x690 fs/gfs2/dir.c:-1 gfs2_dirent_search+0x2e0/0x7e0 fs/gfs2/dir.c:853 gfs2_dir_search+0x4c/0x220 fs/gfs2/dir.c:1653 gfs2_lookupi+0x3d9/0x5a0 fs/gfs2/inode.c:340 __gfs2_lookup+0x8f/0x270 fs/gfs2/inode.c:978 __lookup_slow+0x294/0x3d0 fs/namei.c:1817 lookup_slow+0x53/0x70 fs/namei.c:1834 walk_component+0x2d2/0x400 fs/namei.c:2138 lookup_last fs/namei.c:2639 [inline] path_lookupat+0x163/0x430 fs/namei.c:2663 filename_lookup+0x212/0x570 fs/namei.c:2692 kern_path+0x35/0x50 fs/namei.c:2825 unix_find_bsd net/unix/af_unix.c:1184 [inline] unix_find_other+0x183/0xb40 net/unix/af_unix.c:1246 unix_dgram_sendmsg+0x863/0x17c0 net/unix/af_unix.c:2119 sock_sendmsg_nosec net/socket.c:712 [inline] __sock_sendmsg+0x219/0x270 net/socket.c:727 ____sys_sendmsg+0x52d/0x830 net/socket.c:2566 ___sys_sendmsg+0x21f/0x2a0 net/socket.c:2620 __sys_sendmmsg+0x227/0x430 net/socket.c:2709 __do_sys_sendmmsg net/socket.c:2736 [inline] __se_sys_sendmmsg net/socket.c:2733 [inline] __x64_sys_sendmmsg+0xa0/0xc0 net/socket.c:2733 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f1a81f8e969 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f1a82def038 EFLAGS: 00000246 ORIG_RAX: 0000000000000133 RAX: ffffffffffffffda RBX: 00007f1a821b6080 RCX: 00007f1a81f8e969 RDX: 0000000000000002 RSI: 0000200000000ec0 RDI: 0000000000000006 RBP: 00007f1a82010ab1 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f1a821b6080 R15: 00007ffde8d59a48 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:pid_is_meaningful fs/gfs2/glock.c:1468 [inline] RIP: 0010:dump_holder fs/gfs2/glock.c:2292 [inline] RIP: 0010:gfs2_dump_glock+0x1033/0x1c50 fs/gfs2/glock.c:2414 Code: 40 2f d0 8b be 4b 03 00 00 48 c7 c2 80 2f d0 8b e8 c2 b0 af fd 49 8d 5d 20 49 89 de 49 c1 ee 03 48 b8 00 00 00 00 00 fc ff df <41> 0f b6 04 06 84 c0 0f 85 28 06 00 00 48 89 5c 24 28 0f b7 1b 89 RSP: 0018:ffffc9000d636ac0 EFLAGS: 00010202 RAX: dffffc0000000000 RBX: 0000000000000021 RCX: 0000000000100000 RDX: ffffc9000f329000 RSI: 0000000000002632 RDI: 0000000000002633 RBP: ffffc9000d636db0 R08: 0000000000000000 R09: ffffffff83ee5d93 R10: dffffc0000000000 R11: fffffbfff1f3fbb7 R12: ffffffff83ee5d93 R13: 0000000000000001 R14: 0000000000000004 R15: 0000000000000000 FS: 00007f1a82def6c0(0000) GS:ffff88808d28f000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000557d9c90fff8 CR3: 0000000042589000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 40 2f rex (bad) 2: d0 8b be 4b 03 00 rorb 0x34bbe(%rbx) 8: 00 48 c7 add %cl,-0x39(%rax) b: c2 80 2f ret $0x2f80 e: d0 8b e8 c2 b0 af rorb -0x504f3d18(%rbx) 14: fd std 15: 49 8d 5d 20 lea 0x20(%r13),%rbx 19: 49 89 de mov %rbx,%r14 1c: 49 c1 ee 03 shr $0x3,%r14 20: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 27: fc ff df * 2a: 41 0f b6 04 06 movzbl (%r14,%rax,1),%eax <-- trapping instruction 2f: 84 c0 test %al,%al 31: 0f 85 28 06 00 00 jne 0x65f 37: 48 89 5c 24 28 mov %rbx,0x28(%rsp) 3c: 0f b7 1b movzwl (%rbx),%ebx 3f: 89 .byte 0x89