syzbot


general protection fault in update_sit_entry

Status: upstream: reported C repro on 2025/01/07 01:40
Bug presence: origin:lts-only
[Documentation on labels]
Reported-by: syzbot+fd9d30bfbd5d4a966056@syzkaller.appspotmail.com
First crash: 130d, last: 9d08h
Fix commit to backport (bisect log) :
tree: upstream
commit 458c15dfbce62c35fefd9ca637b20a051309c9f1
Author: Chao Yu <chao@kernel.org>
Date: Tue May 23 03:58:22 2023 +0000

  f2fs: don't reset unchangable mount option in f2fs_remount()

  
Bug presence (2)
Date Name Commit Repro Result
2025/01/07 linux-6.1.y (ToT) 7dc732d24ff7 C [report] general protection fault in update_sit_entry
2025/01/07 upstream (ToT) fbfd64d25c7a C Didn't crash
Similar bugs (5)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-5.15 general protection fault in update_sit_entry origin:lts-only C error 16 45d 218d 0/3 upstream: reported C repro on 2024/10/11 17:04
linux-4.14 general protection fault in update_sit_entry f2fs C 9 804d 917d 0/1 upstream: reported C repro on 2022/11/12 02:17
android-5-10 general protection fault in update_sit_entry C 11 5d17h 169d 0/2 upstream: reported C repro on 2024/11/29 11:40
android-6-1 general protection fault in update_sit_entry origin:downstream C 7 22d 160d 0/2 upstream: reported C repro on 2024/12/08 18:16
android-5-15 general protection fault in update_sit_entry origin:downstream C 8 9d09h 174d 0/2 upstream: reported C repro on 2024/11/24 02:28
Fix bisection attempts (1)
Created Duration User Patch Repo Result
2025/01/27 12:16 8h40m fix candidate upstream OK (1) job log

Sample crash report:
general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 1 PID: 4285 Comm: syz-executor511 Not tainted 6.1.137-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/19/2025
RIP: 0010:f2fs_test_and_set_bit fs/f2fs/f2fs.h:2927 [inline]
RIP: 0010:update_sit_entry+0x626/0xf30 fs/f2fs/segment.c:2227
Code: 01 00 00 48 8d 5d 20 48 89 d8 48 c1 e8 03 42 80 3c 38 00 74 08 48 89 df e8 17 79 2b fe 48 8b 1b 4c 01 e3 48 89 d8 48 c1 e8 03 <42> 0f b6 04 38 84 c0 0f 85 ae 07 00 00 0f b6 2b 89 e8 44 8b 74 24
RSP: 0018:ffffc90003e77110 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: ffff88807ce30000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff88801ceb7210 R08: ffff88807ce30000 R09: 0000000000000003
R10: 00000000ffffffff R11: 0000000000000000 R12: 0000000000000000
R13: ffff888028454000 R14: ffff888028d28840 R15: dffffc0000000000
FS:  00007ffaf26c76c0(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 0000000077199000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 f2fs_allocate_data_block+0x13f8/0x35e0 fs/f2fs/segment.c:3275
 __allocate_data_block+0x519/0x9f0 fs/f2fs/data.c:1424
 f2fs_map_blocks+0xeb0/0x3840 fs/f2fs/data.c:1593
 f2fs_iomap_begin+0x1f0/0x8c0 fs/f2fs/data.c:4175
 iomap_iter+0x6c6/0x1040 fs/iomap/iter.c:91
 __iomap_dio_rw+0xcba/0x1dd0 fs/iomap/direct-io.c:601
 f2fs_dio_write_iter fs/f2fs/file.c:4739 [inline]
 f2fs_file_write_iter+0x10dd/0x2230 fs/f2fs/file.c:4852
 call_write_iter include/linux/fs.h:2265 [inline]
 new_sync_write fs/read_write.c:491 [inline]
 vfs_write+0x44c/0x960 fs/read_write.c:584
 ksys_write+0x143/0x240 fs/read_write.c:637
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7ffaf272b939
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 81 18 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:00007ffaf26c7218 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
RAX: ffffffffffffffda RBX: 00007ffaf27b76d8 RCX: 00007ffaf272b939
RDX: 00000000fffffd62 RSI: 0000000000000000 RDI: 0000000000000004
RBP: 00007ffaf27b76d0 R08: 00007ffdb4bc7207 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0034656c69662f2e
R13: 00002000000000c0 R14: 00007ffdb4bc7120 R15: 00007ffdb4bc7208
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:f2fs_test_and_set_bit fs/f2fs/f2fs.h:2927 [inline]
RIP: 0010:update_sit_entry+0x626/0xf30 fs/f2fs/segment.c:2227
Code: 01 00 00 48 8d 5d 20 48 89 d8 48 c1 e8 03 42 80 3c 38 00 74 08 48 89 df e8 17 79 2b fe 48 8b 1b 4c 01 e3 48 89 d8 48 c1 e8 03 <42> 0f b6 04 38 84 c0 0f 85 ae 07 00 00 0f b6 2b 89 e8 44 8b 74 24
RSP: 0018:ffffc90003e77110 EFLAGS: 00010246

RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: ffff88807ce30000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff88801ceb7210 R08: ffff88807ce30000 R09: 0000000000000003
R10: 00000000ffffffff R11: 0000000000000000 R12: 0000000000000000
R13: ffff888028454000 R14: ffff888028d28840 R15: dffffc0000000000
FS:  00007ffaf26c76c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffaeaa80000 CR3: 0000000077199000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
   0:	01 00                	add    %eax,(%rax)
   2:	00 48 8d             	add    %cl,-0x73(%rax)
   5:	5d                   	pop    %rbp
   6:	20 48 89             	and    %cl,-0x77(%rax)
   9:	d8 48 c1             	fmuls  -0x3f(%rax)
   c:	e8 03 42 80 3c       	call   0x3c804214
  11:	38 00                	cmp    %al,(%rax)
  13:	74 08                	je     0x1d
  15:	48 89 df             	mov    %rbx,%rdi
  18:	e8 17 79 2b fe       	call   0xfe2b7934
  1d:	48 8b 1b             	mov    (%rbx),%rbx
  20:	4c 01 e3             	add    %r12,%rbx
  23:	48 89 d8             	mov    %rbx,%rax
  26:	48 c1 e8 03          	shr    $0x3,%rax
* 2a:	42 0f b6 04 38       	movzbl (%rax,%r15,1),%eax <-- trapping instruction
  2f:	84 c0                	test   %al,%al
  31:	0f 85 ae 07 00 00    	jne    0x7e5
  37:	0f b6 2b             	movzbl (%rbx),%ebp
  3a:	89 e8                	mov    %ebp,%eax
  3c:	44                   	rex.R
  3d:	8b                   	.byte 0x8b
  3e:	74 24                	je     0x64

Crashes (6):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/05/08 14:54 linux-6.1.y ac7079a42ea5 dbf35fa1 .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro (corrupt fs)] ci2-linux-6-1-kasan general protection fault in update_sit_entry
2025/01/07 07:01 linux-6.1.y 7dc732d24ff7 f3558dbf .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-linux-6-1-kasan general protection fault in update_sit_entry
2025/01/07 06:14 linux-6.1.y 7dc732d24ff7 f3558dbf .config console log report syz / log C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-linux-6-1-kasan general protection fault in update_sit_entry
2025/01/07 03:56 linux-6.1.y 7dc732d24ff7 f3558dbf .config console log report syz / log [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-linux-6-1-kasan general protection fault in update_sit_entry
2025/05/08 14:19 linux-6.1.y ac7079a42ea5 dbf35fa1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan general protection fault in update_sit_entry
2025/01/07 01:40 linux-6.1.y 7dc732d24ff7 f3558dbf .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan general protection fault in update_sit_entry
* Struck through repros no longer work on HEAD.