syzbot


BUG: unable to handle kernel paging request in ni_readpage_cmpr

Status: upstream: reported C repro on 2023/08/27 20:46
Bug presence: origin:upstream
Labels: missing-backport
[Documentation on labels]
Reported-by: syzbot+b7b7e810e524e15fdf42@syzkaller.appspotmail.com
First crash: 249d, last: 199d
Fix bisection: failed (error log, bisect log)
  
Bug presence (3)
Date Name Commit Repro Result
2023/10/16 linux-5.15.y (ToT) 02e21884dcf2 C [report] BUG: unable to handle kernel paging request in ni_readpage_cmpr
2023/09/01 upstream (ToT) 99d99825fc07 C [report] VFS: Busy inodes after unmount (use-after-free)
2023/10/16 upstream (ToT) 58720809f527 C Didn't crash
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 BUG: unable to handle kernel paging request in ni_readpage_cmpr C error 11 271d 391d 0/3 auto-obsoleted due to no activity on 2023/11/29 11:32
upstream general protection fault in ni_readpage_cmpr ntfs3 C done done 65 194d 387d 0/26 auto-obsoleted due to no activity on 2023/12/30 05:23
Fix bisection attempts (5)
Created Duration User Patch Repo Result
2024/03/22 07:29 25m fix candidate upstream error job log (0)
2024/01/09 00:56 1m fix candidate upstream error job log (0)
2023/11/20 19:27 1m fix candidate upstream error job log (0)
2023/10/16 10:04 0m fix candidate upstream error job log (0)
2023/10/11 20:46 0m bisect fix linux-5.15.y error job log (0)

Sample crash report:
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
 el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:596
 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:614
 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
Unable to handle kernel paging request at virtual address dfff800000000001
Mem abort info:
  ESR = 0x0000000096000006
  EC = 0x25: DABT (current EL), IL = 32 bits
  SET = 0, FnV = 0
  EA = 0, S1PTW = 0
  FSC = 0x06: level 2 translation fault
Data abort info:
  ISV = 0, ISS = 0x00000006
  CM = 0, WnR = 0
[dfff800000000001] address between user and kernel address ranges
Internal error: Oops: 96000006 [#1] PREEMPT SMP
Modules linked in:
CPU: 1 PID: 3963 Comm: syz-executor249 Not tainted 5.15.128-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/26/2023
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : _compound_head include/linux/page-flags.h:196 [inline]
pc : unlock_page+0x30/0x204 mm/filemap.c:1510
lr : unlock_page+0x28/0x204 mm/filemap.c:1508
sp : ffff80001a047530
x29: ffff80001a047530 x28: dfff800000000000 x27: 0000000000000000
x26: 0000000000000007 x25: 0000000000000000 x24: 0000000000000000
x23: 0000000000000004 x22: dfff800000000000 x21: 00000000fffffff4
x20: 0000000000000008 x19: 0000000000000000 x18: 0000000000000001
x17: ff80800008334ef4 x16: ffff8000084c19c4 x15: ffff800008334ef4
x14: 00000000ffffffff x13: ffffffffffffffff x12: 0000000000000000
x11: ff808000086d3530 x10: 0000000000000000 x9 : ffff8000086d3530
x8 : 0000000000000001 x7 : 0000000000000000 x6 : 0000000000000001
x5 : ffff80001a046698 x4 : 0000000000000000 x3 : ffff80000958bef8
x2 : 0000000000000001 x1 : 0000000000000000 x0 : 0000000000000000
Call trace:
 _compound_head include/linux/page-flags.h:196 [inline]
 unlock_page+0x30/0x204 mm/filemap.c:1510
 ni_readpage_cmpr+0x4a0/0x68c fs/ntfs3/frecord.c:2105
 ntfs_readpage+0x14c/0x1c0 fs/ntfs3/inode.c:725
 filemap_read_page+0x150/0x454 mm/filemap.c:2386
 filemap_update_page mm/filemap.c:2464 [inline]
 filemap_get_pages mm/filemap.c:2574 [inline]
 filemap_read+0xe3c/0x1bd4 mm/filemap.c:2634
 generic_file_read_iter+0xa0/0x3c4 mm/filemap.c:2785
 ntfs_file_read_iter+0x184/0x1e0 fs/ntfs3/file.c:832
 call_read_iter include/linux/fs.h:2097 [inline]
 new_sync_read fs/read_write.c:404 [inline]
 vfs_read+0x86c/0xb10 fs/read_write.c:485
 ksys_read+0x15c/0x26c fs/read_write.c:623
 __do_sys_read fs/read_write.c:633 [inline]
 __se_sys_read fs/read_write.c:631 [inline]
 __arm64_sys_read+0x7c/0x90 fs/read_write.c:631
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
 el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:596
 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:614
 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
Code: f2fbfff6 97f7b926 91002274 d343fe88 (38766908) 
---[ end trace 6a4f0d42769660e9 ]---
----------------
Code disassembly (best guess):
   0:	f2fbfff6 	movk	x22, #0xdfff, lsl #48
   4:	97f7b926 	bl	0xffffffffffdee49c
   8:	91002274 	add	x20, x19, #0x8
   c:	d343fe88 	lsr	x8, x20, #3
* 10:	38766908 	ldrb	w8, [x8, x22] <-- trapping instruction

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/08/27 21:05 linux-5.15.y 5ddfe5cc8716 7ba13a15 .config console log report syz C [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-linux-5-15-kasan-arm64 BUG: unable to handle kernel paging request in ni_readpage_cmpr
2023/08/27 20:45 linux-5.15.y 5ddfe5cc8716 7ba13a15 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan-arm64 BUG: unable to handle kernel paging request in ni_readpage_cmpr
* Struck through repros no longer work on HEAD.