syzbot


BUG: unable to handle kernel paging request in alloc_fs_context

Status: moderation: reported on 2025/04/15 14:50
Subsystems: efi fs
[Documentation on labels]
Reported-by: syzbot+a5acbb62a959d7af10c4@syzkaller.appspotmail.com
First crash: 14d, last: 21h52m

Sample crash report:
Bluetooth: hci2: Opcode 0x0c1a failed: -4
Bluetooth: hci3: Opcode 0x0c1a failed: -4
Bluetooth: hci4: Opcode 0x0c1a failed: -4
efivarfs: resyncing variable state
Unable to handle kernel paging request at virtual address dfff800000000005
KASAN: null-ptr-deref in range [0x0000000000000028-0x000000000000002f]
Mem abort info:
  ESR = 0x0000000096000005
  EC = 0x25: DABT (current EL), IL = 32 bits
  SET = 0, FnV = 0
  EA = 0, S1PTW = 0
  FSC = 0x05: level 1 translation fault
Data abort info:
  ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000
  CM = 0, WnR = 0, TnD = 0, TagAccess = 0
  GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[dfff800000000005] address between user and kernel address ranges
Internal error: Oops: 0000000096000005 [#1]  SMP
Modules linked in:
CPU: 1 UID: 0 PID: 10980 Comm: syz.1.1456 Not tainted 6.15.0-rc2-syzkaller-gc72692105976 #0 PREEMPT 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : alloc_fs_context+0x1b8/0x7a4 fs/fs_context.c:294
lr : __lse_atomic64_add arch/arm64/include/asm/atomic_lse.h:-1 [inline]
lr : arch_atomic64_add arch/arm64/include/asm/atomic.h:67 [inline]
lr : raw_atomic64_add include/linux/atomic/atomic-arch-fallback.h:2672 [inline]
lr : raw_atomic_long_add include/linux/atomic/atomic-long.h:121 [inline]
lr : atomic_long_add include/linux/atomic/atomic-instrumented.h:3261 [inline]
lr : get_cred_many include/linux/cred.h:203 [inline]
lr : get_cred include/linux/cred.h:218 [inline]
lr : alloc_fs_context+0x15c/0x7a4 fs/fs_context.c:293
sp : ffff80009d4e73b0
x29: ffff80009d4e73d0 x28: dfff800000000000 x27: ffff0000dc6ca758
x26: 0000000000000028 x25: ffff0000f2fbe0c8 x24: ffff8000907b4de0
x23: 0000000000000000 x22: 1fffe0001e5f7c19 x21: 1fffe0001e5f7c13
x20: ffff0000dc6c9e80 x19: ffff0000f2fbe000 x18: 0000000000000008
x17: 00000000fffffffa x16: ffff80008b9898f0 x15: 0000000000000001
x14: 1fffe0001ae44160 x13: 0000000000000000 x12: 0000000000000000
x11: ffff60001ae44161 x10: 0000000000ff0100 x9 : 0000000000000000
x8 : 0000000000000005 x7 : ffff80008013e54c x6 : ffff800080345f98
x5 : ffff0000cf49f088 x4 : ffff80009d4e7168 x3 : ffff800080e1e5fc
x2 : 0000000000000001 x1 : 0000000000000008 x0 : 0000000000000001
Call trace:
 alloc_fs_context+0x1b8/0x7a4 fs/fs_context.c:294 (P)
 fs_context_for_mount+0x34/0x44 fs/fs_context.c:332
 vfs_kern_mount+0x38/0x178 fs/namespace.c:1313
 efivarfs_pm_notify+0x244/0x5d0 fs/efivarfs/super.c:529
 notifier_call_chain+0x1c4/0x550 kernel/notifier.c:85
 blocking_notifier_call_chain+0x70/0xa0 kernel/notifier.c:380
 pm_notifier_call_chain+0x2c/0x3c kernel/power/main.c:109
 snapshot_release+0x128/0x1b8 kernel/power/user.c:125
 __fput+0x340/0x760 fs/file_table.c:465
 ____fput+0x20/0x58 fs/file_table.c:493
 task_work_run+0x230/0x2e0 kernel/task_work.c:227
 exit_task_work include/linux/task_work.h:40 [inline]
 do_exit+0x4e8/0x1a20 kernel/exit.c:953
 do_group_exit+0x194/0x22c kernel/exit.c:1102
 get_signal+0x13e4/0x1500 kernel/signal.c:3034
 do_signal+0x22c/0x39f0 arch/arm64/kernel/signal.c:1615
 do_notify_resume+0x74/0x1f4 arch/arm64/kernel/entry-common.c:148
 exit_to_user_mode_prepare arch/arm64/kernel/entry-common.c:169 [inline]
 exit_to_user_mode arch/arm64/kernel/entry-common.c:178 [inline]
 el0_svc+0xac/0x168 arch/arm64/kernel/entry-common.c:745
 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762
 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
Code: 97f819ce f9400368 9100a11a d343ff48 (387c6908) 
---[ end trace 0000000000000000 ]---
----------------
Code disassembly (best guess):
   0:	97f819ce 	bl	0xffffffffffe06738
   4:	f9400368 	ldr	x8, [x27]
   8:	9100a11a 	add	x26, x8, #0x28
   c:	d343ff48 	lsr	x8, x26, #3
* 10:	387c6908 	ldrb	w8, [x8, x28] <-- trapping instruction

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/04/25 10:49 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 e3715315 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in alloc_fs_context
2025/04/25 10:47 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci c72692105976 e3715315 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in alloc_fs_context
2025/04/14 09:33 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 2fe2b96c3818 0bd6db41 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in alloc_fs_context
2025/04/11 14:40 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 2fe2b96c3818 12ba9c21 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: unable to handle kernel paging request in alloc_fs_context
* Struck through repros no longer work on HEAD.