syz.0.17[5946]: memfd_create() called without MFD_EXEC or MFD_NOEXEC_SEAL set
loop0: detected capacity change from 0 to 64
general protection fault, probably for non-canonical address 0xdffffc0000000008: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000040-0x0000000000000047]
CPU: 1 PID: 5946 Comm: syz.0.17 Not tainted 6.6.101-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:hfs_find_init+0x6a/0x1d0 fs/hfs/bfind.c:21
Code: 7e 18 4c 89 f8 48 c1 e8 03 42 80 3c 28 00 74 08 4c 89 ff e8 c8 7c 87 ff 49 c7 07 00 00 00 00 48 8d 6b 40 49 89 ef 49 c1 ef 03 <43> 0f b6 04 2f 84 c0 0f 85 01 01 00 00 8b 45 00 8d 7c 00 04 be c0
RSP: 0018:ffffc900032d7388 EFLAGS: 00010202
RAX: 1ffff9200065ae8f RBX: 0000000000000000 RCX: ffff888026720000
RDX: 0000000000000000 RSI: ffffc900032d7460 RDI: ffffc900032d7470
RBP: 0000000000000040 R08: ffffc900032d7497 R09: 0000000000000000
R10: ffffc900032d7460 R11: fffff5200065ae93 R12: ffff88802bef6630
R13: dffffc0000000000 R14: ffffc900032d7460 R15: 0000000000000008
FS: 0000555589313500(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f3c3bd71fa0 CR3: 0000000075ea6000 CR4: 00000000003506e0
Call Trace:
<TASK>
hfs_ext_read_extent fs/hfs/extent.c:200 [inline]
hfs_get_block+0x51c/0xbd0 fs/hfs/extent.c:366
block_read_full_folio+0x42e/0xf40 fs/buffer.c:2406
filemap_read_folio+0x167/0x760 mm/filemap.c:2420
do_read_cache_folio+0x470/0x7e0 mm/filemap.c:3789
do_read_cache_page+0x32/0x250 mm/filemap.c:3855
read_mapping_page include/linux/pagemap.h:892 [inline]
hfs_btree_open+0x56c/0x10c0 fs/hfs/btree.c:78
hfs_mdb_get+0x12dc/0x2010 fs/hfs/mdb.c:199
hfs_fill_super+0xd1d/0x1320 fs/hfs/super.c:406
mount_bdev+0x22b/0x2d0 fs/super.c:1643
legacy_get_tree+0xea/0x180 fs/fs_context.c:662
vfs_get_tree+0x8c/0x280 fs/super.c:1764
do_new_mount+0x24b/0xa40 fs/namespace.c:3371
do_mount fs/namespace.c:3711 [inline]
__do_sys_mount fs/namespace.c:3920 [inline]
__se_sys_mount+0x2da/0x3c0 fs/namespace.c:3897
do_syscall_x64 arch/x86/entry/common.c:51 [inline]
do_syscall_64+0x55/0xb0 arch/x86/entry/common.c:81
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f3c3bd9030a
Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb a6 e8 de 1a 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 49 89 ca b8 a5 00 00 00 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:00007ffe2df1b618 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007ffe2df1b6a0 RCX: 00007f3c3bd9030a
RDX: 0000200000000180 RSI: 0000200000000100 RDI: 00007ffe2df1b660
RBP: 0000200000000180 R08: 00007ffe2df1b6a0 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000200000000100
R13: 00007ffe2df1b660 R14: 00000000000002d9 R15: 0000200000000240
</TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:hfs_find_init+0x6a/0x1d0 fs/hfs/bfind.c:21
Code: 7e 18 4c 89 f8 48 c1 e8 03 42 80 3c 28 00 74 08 4c 89 ff e8 c8 7c 87 ff 49 c7 07 00 00 00 00 48 8d 6b 40 49 89 ef 49 c1 ef 03 <43> 0f b6 04 2f 84 c0 0f 85 01 01 00 00 8b 45 00 8d 7c 00 04 be c0
RSP: 0018:ffffc900032d7388 EFLAGS: 00010202
RAX: 1ffff9200065ae8f RBX: 0000000000000000 RCX: ffff888026720000
RDX: 0000000000000000 RSI: ffffc900032d7460 RDI: ffffc900032d7470
RBP: 0000000000000040 R08: ffffc900032d7497 R09: 0000000000000000
R10: ffffc900032d7460 R11: fffff5200065ae93 R12: ffff88802bef6630
R13: dffffc0000000000 R14: ffffc900032d7460 R15: 0000000000000008
FS: 0000555589313500(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f3c3bd71fa0 CR3: 0000000075ea6000 CR4: 00000000003506e0
----------------
Code disassembly (best guess):
0: 7e 18 jle 0x1a
2: 4c 89 f8 mov %r15,%rax
5: 48 c1 e8 03 shr $0x3,%rax
9: 42 80 3c 28 00 cmpb $0x0,(%rax,%r13,1)
e: 74 08 je 0x18
10: 4c 89 ff mov %r15,%rdi
13: e8 c8 7c 87 ff call 0xff877ce0
18: 49 c7 07 00 00 00 00 movq $0x0,(%r15)
1f: 48 8d 6b 40 lea 0x40(%rbx),%rbp
23: 49 89 ef mov %rbp,%r15
26: 49 c1 ef 03 shr $0x3,%r15
* 2a: 43 0f b6 04 2f movzbl (%r15,%r13,1),%eax <-- trapping instruction
2f: 84 c0 test %al,%al
31: 0f 85 01 01 00 00 jne 0x138
37: 8b 45 00 mov 0x0(%rbp),%eax
3a: 8d 7c 00 04 lea 0x4(%rax,%rax,1),%edi
3e: be .byte 0xbe
3f: c0 .byte 0xc0