hfsplus: request for non-existent node 134217728 in B*Tree hfsplus: request for non-existent node 134217728 in B*Tree general protection fault, maybe for address 0xffffc90008107208: 0000 [#1] PREEMPT SMP KASAN NOPTI CPU: 1 PID: 6633 Comm: syz-executor.2 Not tainted 6.9.0-rc7-syzkaller-00183-gcf87f46fd34d #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.2-debian-1.16.2-1 04/01/2014 RIP: 0010:memcpy+0xc/0x20 arch/x86/lib/memcpy_64.S:38 Code: 96 17 8f e8 f6 f9 d4 f9 e9 53 fd ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 48 89 f8 48 89 d1 a4 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 RSP: 0018:ffffc90008107170 EFLAGS: 00010286 RAX: ffffc90008107208 RBX: 0000000000000fff RCX: 0000000000000001 RDX: 0000000000000001 RSI: ffe728915cee6fff RDI: ffffc90008107208 RBP: 0000000000000001 R08: 0000000000000007 R09: 0000000000001000 R10: 0000000000001000 R11: 0000000000000004 R12: 0000000000001000 R13: 0000000000000001 R14: 0000000000000001 R15: ffff88801ab04600 FS: 00007f7529b476c0(0000) GS:ffff88806b300000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000055bff6152508 CR3: 00000000242c8000 CR4: 0000000000350ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: memcpy_from_page include/linux/highmem.h:417 [inline] hfsplus_bnode_read+0x100/0x240 fs/hfsplus/bnode.c:32 hfsplus_bnode_read_u16 fs/hfsplus/bnode.c:45 [inline] hfsplus_bnode_dump+0x2a2/0x3e0 fs/hfsplus/bnode.c:321 hfsplus_brec_remove+0x3e2/0x4f0 fs/hfsplus/brec.c:229 __hfsplus_delete_attr+0x2a2/0x3b0 fs/hfsplus/attributes.c:299 hfsplus_delete_attr+0x27e/0x310 fs/hfsplus/attributes.c:345 __hfsplus_setxattr+0x66f/0x2180 fs/hfsplus/xattr.c:342 hfsplus_setxattr+0x10c/0x180 fs/hfsplus/xattr.c:434 __vfs_setxattr+0x173/0x1e0 fs/xattr.c:200 __vfs_setxattr_noperm+0x127/0x5e0 fs/xattr.c:234 __vfs_setxattr_locked+0x182/0x260 fs/xattr.c:295 vfs_setxattr+0x146/0x350 fs/xattr.c:321 do_setxattr+0x146/0x170 fs/xattr.c:629 setxattr+0x15d/0x180 fs/xattr.c:652 path_setxattr+0x179/0x1e0 fs/xattr.c:671 __do_sys_setxattr fs/xattr.c:687 [inline] __se_sys_setxattr fs/xattr.c:683 [inline] __x64_sys_setxattr+0xc4/0x160 fs/xattr.c:683 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcf/0x260 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f7528e7dd69 Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 e1 20 00 00 90 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 b0 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f7529b470c8 EFLAGS: 00000246 ORIG_RAX: 00000000000000bc RAX: ffffffffffffffda RBX: 00007f7528fac120 RCX: 00007f7528e7dd69 RDX: 0000000020001280 RSI: 00000000200001c0 RDI: 0000000020000380 RBP: 00007f7528eca49e R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000835 R11: 0000000000000246 R12: 0000000000000000 R13: 000000000000000b R14: 00007f7528fac120 R15: 00007ffe97e64b38 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:memcpy+0xc/0x20 arch/x86/lib/memcpy_64.S:38 Code: 96 17 8f e8 f6 f9 d4 f9 e9 53 fd ff ff 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 48 89 f8 48 89 d1 a4 c3 cc cc cc cc 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 90 90 RSP: 0018:ffffc90008107170 EFLAGS: 00010286 RAX: ffffc90008107208 RBX: 0000000000000fff RCX: 0000000000000001 RDX: 0000000000000001 RSI: ffe728915cee6fff RDI: ffffc90008107208 RBP: 0000000000000001 R08: 0000000000000007 R09: 0000000000001000 R10: 0000000000001000 R11: 0000000000000004 R12: 0000000000001000 R13: 0000000000000001 R14: 0000000000000001 R15: ffff88801ab04600 FS: 00007f7529b476c0(0000) GS:ffff88806b400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ffc83b70df8 CR3: 00000000242c8000 CR4: 0000000000350ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess), 3 bytes skipped: 0: e8 f6 f9 d4 f9 call 0xf9d4f9fb 5: e9 53 fd ff ff jmp 0xfffffd5d a: 90 nop b: 90 nop c: 90 nop d: 90 nop e: 90 nop f: 90 nop 10: 90 nop 11: 90 nop 12: 90 nop 13: 90 nop 14: 90 nop 15: 90 nop 16: 90 nop 17: 90 nop 18: 90 nop 19: 90 nop 1a: 90 nop 1b: f3 0f 1e fa endbr64 1f: 66 90 xchg %ax,%ax 21: 48 89 f8 mov %rdi,%rax 24: 48 89 d1 mov %rdx,%rcx * 27: f3 a4 rep movsb %ds:(%rsi),%es:(%rdi) <-- trapping instruction 29: c3 ret 2a: cc int3 2b: cc int3 2c: cc int3 2d: cc int3 2e: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1) 35: 00 00 00 00 39: 66 90 xchg %ax,%ax 3b: 90 nop 3c: 90 nop