general protection fault in ocfs2_prepare_dir_for_insert

Status: upstream: reported C repro on 2025/12/18 14:49
Bug presence: origin:lts-only
[Documentation on labels]
Reported-by: syzbot+4a95be9920417e49cbd5@syzkaller.appspotmail.com
First crash: 289d, last: 22d
Fix bisection: failed (error log, bisect log)
  
▶ ▼ Bug presence (2)
Date Name Commit Repro Result
2025/12/18 linux-6.6.y (ToT) 5fa4793a2d2d C [report] general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 upstream (ToT) ea1013c15392 C Didn't crash
▶ ▼ Similar bugs (5)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-5.15 general protection fault in ocfs2_prepare_dir_for_insert origin:lts-only 2 syz, C inconclusive 7 23d 289d 0/3 upstream: reported C repro on 2025/12/18 19:22
linux-6.1 BUG: unable to handle kernel paging request in ocfs2_prepare_dir_for_insert origin:upstream missing-backport 8 syz, C inconclusive 29 22d 683d 0/3 upstream: reported C repro on 2024/11/19 13:12
upstream general protection fault in ocfs2_prepare_dir_for_insert (2) ocfs2 8 syz, C error 20 301d 481d 29/29 fixed on 2026/01/07 12:29
linux-5.15 BUG: unable to handle kernel paging request in ocfs2_prepare_dir_for_insert 8 syz, C error 15 577d 594d 0/3 auto-obsoleted due to no activity on 2025/05/14 04:21
upstream general protection fault in ocfs2_prepare_dir_for_insert ocfs2 8 syz, C inconclusive 1072 525d 774d 28/29 fixed on 2025/05/06 15:33
▶ ▼ Fix bisection attempts (6)
Created Duration User Patch Repo Result
2026/06/06 08:31 16m fix candidate upstream error job log
2026/04/27 04:40 15m fix candidate upstream error job log
2026/03/27 06:50 1m fix candidate upstream error job log
2026/02/23 02:59 1m fix candidate upstream error job log
2026/01/23 19:17 1m fix candidate upstream error job log
2026/01/21 07:05 0m bisect fix linux-6.6.y error job log

Sample crash report:
         and is ignored by this kernel. Remove the mand
         option from the mount to silence this warning.
=======================================================
JBD2: Ignoring recovery information on journal
ocfs2: Mounting device (7,0) on (node local, slot 0) with ordered data mode.
general protection fault, probably for non-canonical address 0xdffffc0000000001: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]
CPU: 0 PID: 5924 Comm: syz.0.17 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
RIP: 0010:ocfs2_find_dir_space_id fs/ocfs2/dir.c:3426 [inline]
RIP: 0010:ocfs2_prepare_dir_for_insert+0x3039/0x5520 fs/ocfs2/dir.c:4306
Code: ff ff e8 da d5 29 fe e9 bf d2 ff ff e8 d0 d5 29 fe e9 e2 02 00 00 e8 c6 d5 29 fe 49 8d 7f 08 49 8d 5f 09 48 89 f8 48 c1 e8 03 <42> 0f b6 04 20 84 c0 4c 8b b4 24 80 00 00 00 0f 85 e2 1f 00 00 4c
RSP: 0018:ffffc9000462f080 EFLAGS: 00010202
RAX: 0000000000000001 RBX: 0000000000000009 RCX: ffff888021bb9e00
RDX: 0000000000000000 RSI: ffff8880234c00c8 RDI: 0000000000000008
RBP: ffffc9000462f7b0 R08: ffffc9000462fac0 R09: 608b7c562adf3b03
R10: 23ec6d672c196c9a R11: 608b7c562adf3b03 R12: dffffc0000000000
R13: fffff520008c5e34 R14: 1ffff1100bc9cbcb R15: 0000000000000000
FS:  000055557ece2500(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fe0d6c70050 CR3: 00000000182ee000 CR4: 00000000003506f0
Call Trace:
 <TASK>
 __ocfs2_prepare_orphan_dir+0x145/0x310 fs/ocfs2/namei.c:2167
 ocfs2_prepare_orphan_dir+0xf1/0x420 fs/ocfs2/namei.c:2210
 ocfs2_unlink+0xb96/0x1b30 fs/ocfs2/namei.c:960
 vfs_unlink+0x37a/0x600 fs/namei.c:4380
 do_unlinkat+0x339/0x590 fs/namei.c:4446
 __do_sys_unlink fs/namei.c:4494 [inline]
 __se_sys_unlink fs/namei.c:4492 [inline]
 __x64_sys_unlink+0x49/0x50 fs/namei.c:4492
 do_syscall_x64 arch/x86/entry/common.c:46 [inline]
 do_syscall_64+0x55/0xb0 arch/x86/entry/common.c:76
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fe0d6d9e159
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 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 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffd43437c28 EFLAGS: 00000246 ORIG_RAX: 0000000000000057
RAX: ffffffffffffffda RBX: 00007fe0d7025fa0 RCX: 00007fe0d6d9e159
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000200000000040
RBP: 00007fe0d6e3503b R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fe0d7025fac R14: 00007fe0d7025fa0 R15: 00007fe0d7025fa0
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:ocfs2_find_dir_space_id fs/ocfs2/dir.c:3426 [inline]
RIP: 0010:ocfs2_prepare_dir_for_insert+0x3039/0x5520 fs/ocfs2/dir.c:4306
Code: ff ff e8 da d5 29 fe e9 bf d2 ff ff e8 d0 d5 29 fe e9 e2 02 00 00 e8 c6 d5 29 fe 49 8d 7f 08 49 8d 5f 09 48 89 f8 48 c1 e8 03 <42> 0f b6 04 20 84 c0 4c 8b b4 24 80 00 00 00 0f 85 e2 1f 00 00 4c
RSP: 0018:ffffc9000462f080 EFLAGS: 00010202
RAX: 0000000000000001 RBX: 0000000000000009 RCX: ffff888021bb9e00
RDX: 0000000000000000 RSI: ffff8880234c00c8 RDI: 0000000000000008
RBP: ffffc9000462f7b0 R08: ffffc9000462fac0 R09: 608b7c562adf3b03
R10: 23ec6d672c196c9a R11: 608b7c562adf3b03 R12: dffffc0000000000
R13: fffff520008c5e34 R14: 1ffff1100bc9cbcb R15: 0000000000000000
FS:  000055557ece2500(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fe0d6c70050 CR3: 00000000182ee000 CR4: 00000000003506f0
----------------
Code disassembly (best guess), 1 bytes skipped:
   0:	ff                   	ljmp   (bad)
   1:	e8 da d5 29 fe       	call   0xfe29d5e0
   6:	e9 bf d2 ff ff       	jmp    0xffffd2ca
   b:	e8 d0 d5 29 fe       	call   0xfe29d5e0
  10:	e9 e2 02 00 00       	jmp    0x2f7
  15:	e8 c6 d5 29 fe       	call   0xfe29d5e0
  1a:	49 8d 7f 08          	lea    0x8(%r15),%rdi
  1e:	49 8d 5f 09          	lea    0x9(%r15),%rbx
  22:	48 89 f8             	mov    %rdi,%rax
  25:	48 c1 e8 03          	shr    $0x3,%rax
* 29:	42 0f b6 04 20       	movzbl (%rax,%r12,1),%eax <-- trapping instruction
  2e:	84 c0                	test   %al,%al
  30:	4c 8b b4 24 80 00 00 	mov    0x80(%rsp),%r14
  37:	00
  38:	0f 85 e2 1f 00 00    	jne    0x2020
  3e:	4c                   	rex.WR

Crashes (10):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/09/11 00:29 linux-6.6.y 8b73de7da85f 1fe56c0a .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (clean fs)] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 16:23 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (clean fs)] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 15:20 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (clean fs)] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2026/09/10 18:39 linux-6.6.y 8b73de7da85f 1fe56c0a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2026/06/17 07:04 linux-6.6.y 924b4a879cbb 62cc6db3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2026/06/17 07:04 linux-6.6.y 924b4a879cbb 62cc6db3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 14:51 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 14:51 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 14:49 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
2025/12/18 14:48 linux-6.6.y 5fa4793a2d2d d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan general protection fault in ocfs2_prepare_dir_for_insert
* Struck through repros no longer work on HEAD.