==================================================================
BUG: KASAN: invalid-access in __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
BUG: KASAN: invalid-access in _raw_spin_lock_irqsave+0x5c/0x7c kernel/locking/spinlock.c:162
Read of size 1 at addr 00000000000013c8 by task syz.0.1041/7144
CPU: 0 UID: 0 PID: 7144 Comm: syz.0.1041 Not tainted 6.15.0-rc4-syzkaller-gc4e91ea0cc7e #0 PREEMPT
Hardware name: linux,dummy-virt (DT)
Call trace:
show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)
__dump_stack+0x30/0x40 lib/dump_stack.c:94
dump_stack_lvl+0xd8/0x12c lib/dump_stack.c:120
print_report+0x5c/0xa0 mm/kasan/report.c:524
kasan_report+0xb0/0x110 mm/kasan/report.c:634
__kasan_check_byte+0x3c/0x54 mm/kasan/common.c:557
kasan_check_byte include/linux/kasan.h:399 [inline]
lock_acquire+0xb0/0x2e0 kernel/locking/lockdep.c:5840
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0x5c/0x7c kernel/locking/spinlock.c:162
kvm_vgic_set_owner+0x18c/0x294 arch/arm64/kvm/vgic/vgic.c:611
timer_irqs_are_valid arch/arm64/kvm/arch_timer.c:1573 [inline]
kvm_timer_enable+0x1c4/0x794 arch/arm64/kvm/arch_timer.c:1631
kvm_arch_vcpu_run_pid_change+0x1f0/0x458 arch/arm64/kvm/arm.c:857
kvm_vcpu_ioctl+0xae8/0xc24 virt/kvm/kvm_main.c:4381
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:906 [inline]
__se_sys_ioctl fs/ioctl.c:892 [inline]
__arm64_sys_ioctl+0x18c/0x244 fs/ioctl.c:892
__invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
invoke_syscall+0x90/0x2b4 arch/arm64/kernel/syscall.c:49
el0_svc_common+0x180/0x2f4 arch/arm64/kernel/syscall.c:132
do_el0_svc+0x58/0x74 arch/arm64/kernel/syscall.c:151
el0_svc+0x58/0x134 arch/arm64/kernel/entry-common.c:744
el0t_64_sync_handler+0x78/0x108 arch/arm64/kernel/entry-common.c:762
el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
==================================================================
Unable to handle kernel paging request at virtual address ffef80000000013b
KASAN: maybe wild-memory-access in range [0xff000000000013b0-0xff000000000013bf]
Mem abort info:
ESR = 0x0000000096000004
EC = 0x25: DABT (current EL), IL = 32 bits
SET = 0, FnV = 0
EA = 0, S1PTW = 0
FSC = 0x04: level 0 translation fault
Data abort info:
ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000
CM = 0, WnR = 0, TnD = 0, TagAccess = 0
GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[ffef80000000013b] address between user and kernel address ranges
Internal error: Oops: 0000000096000004 [#1] SMP
Modules linked in:
CPU: 0 UID: 0 PID: 7144 Comm: syz.0.1041 Tainted: G B 6.15.0-rc4-syzkaller-gc4e91ea0cc7e #0 PREEMPT
Tainted: [B]=BAD_PAGE
Hardware name: linux,dummy-virt (DT)
pstate: 604020c9 (nZCv daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : debug_spin_lock_before kernel/locking/spinlock_debug.c:86 [inline]
pc : do_raw_spin_lock+0x4c/0x2b4 kernel/locking/spinlock_debug.c:115
lr : __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:111 [inline]
lr : _raw_spin_lock_irqsave+0x64/0x7c kernel/locking/spinlock.c:162
sp : ffff8000a8ef7930
x29: ffff8000a8ef7940 x28: ddf00000139057c0 x27: ddf0000013906c30
x26: 0000000000000001 x25: ddf0000013906e10 x24: 0000000000000010
x23: a3ff8000a91ee000 x22: ddf00000139057c0 x21: ffff8000801fd8a4
x20: 00000000000013b0 x19: efff800000000000 x18: 00000000000000ff
x17: 000000000000001f x16: 00000000000000fe x15: 0000000000000000
x14: 0000000000000000 x13: 00000000ffffffff x12: 0000000000000002
x11: 0000000000000001 x10: 0ff000000000013b x9 : 0000000000000000
x8 : 00000000000013b4 x7 : ffff8000870a9afd x6 : ffff800086582ed8
x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff8000802a42dc
x2 : 0000000000000001 x1 : 0000000000000000 x0 : 00000000000013b0
Call trace:
debug_spin_lock_before kernel/locking/spinlock_debug.c:86 [inline] (P)
do_raw_spin_lock+0x4c/0x2b4 kernel/locking/spinlock_debug.c:115 (P)
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:111 [inline]
_raw_spin_lock_irqsave+0x64/0x7c kernel/locking/spinlock.c:162
kvm_vgic_set_owner+0x18c/0x294 arch/arm64/kvm/vgic/vgic.c:611
timer_irqs_are_valid arch/arm64/kvm/arch_timer.c:1573 [inline]
kvm_timer_enable+0x1c4/0x794 arch/arm64/kvm/arch_timer.c:1631
kvm_arch_vcpu_run_pid_change+0x1f0/0x458 arch/arm64/kvm/arm.c:857
kvm_vcpu_ioctl+0xae8/0xc24 virt/kvm/kvm_main.c:4381
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:906 [inline]
__se_sys_ioctl fs/ioctl.c:892 [inline]
__arm64_sys_ioctl+0x18c/0x244 fs/ioctl.c:892
__invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
invoke_syscall+0x90/0x2b4 arch/arm64/kernel/syscall.c:49
el0_svc_common+0x180/0x2f4 arch/arm64/kernel/syscall.c:132
do_el0_svc+0x58/0x74 arch/arm64/kernel/syscall.c:151
el0_svc+0x58/0x134 arch/arm64/kernel/entry-common.c:744
el0t_64_sync_handler+0x78/0x108 arch/arm64/kernel/entry-common.c:762
el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
Code: d344fd4a aa0003f4 f90007e9 d378fd09 (386a6a6a)
---[ end trace 0000000000000000 ]---
----------------
Code disassembly (best guess):
0: d344fd4a lsr x10, x10, #4
4: aa0003f4 mov x20, x0
8: f90007e9 str x9, [sp, #8]
c: d378fd09 lsr x9, x8, #56
* 10: 386a6a6a ldrb w10, [x19, x10] <-- trapping instruction