============================= [ BUG: Invalid wait context ] 6.15.0-rc6-syzkaller-00025-g627277ba7c23 #0 Not tainted ----------------------------- swapper/0/0 is trying to lock: ffffc9000459a410 (&gpc->lock){....}-{3:3}, at: kvm_xen_set_evtchn_fast+0x1fb/0x9a0 arch/x86/kvm/xen.c:1819 other info that might help us debug this: context-{2:2} 1 lock held by swapper/0/0: #0: ffffc9000459a958 (&kvm->srcu){.?.+}-{0:0}, at: srcu_lock_acquire include/linux/srcu.h:161 [inline] #0: ffffc9000459a958 (&kvm->srcu){.?.+}-{0:0}, at: srcu_read_lock include/linux/srcu.h:253 [inline] #0: ffffc9000459a958 (&kvm->srcu){.?.+}-{0:0}, at: kvm_xen_set_evtchn_fast+0x1c3/0x9a0 arch/x86/kvm/xen.c:1817 stack backtrace: CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 6.15.0-rc6-syzkaller-00025-g627277ba7c23 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 Call Trace: dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120 print_lock_invalid_wait_context kernel/locking/lockdep.c:4831 [inline] check_wait_context kernel/locking/lockdep.c:4903 [inline] __lock_acquire+0xbcf/0xd20 kernel/locking/lockdep.c:5185 lock_acquire+0x120/0x360 kernel/locking/lockdep.c:5866 __raw_read_lock_irqsave include/linux/rwlock_api_smp.h:160 [inline] _raw_read_lock_irqsave+0xaf/0x100 kernel/locking/spinlock.c:236 kvm_xen_set_evtchn_fast+0x1fb/0x9a0 arch/x86/kvm/xen.c:1819 xen_timer_callback+0x109/0x220 arch/x86/kvm/xen.c:140 __run_hrtimer kernel/time/hrtimer.c:1761 [inline] __hrtimer_run_queues+0x4e0/0xc60 kernel/time/hrtimer.c:1825 hrtimer_interrupt+0x45b/0xaa0 kernel/time/hrtimer.c:1887 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1038 [inline] __sysvec_apic_timer_interrupt+0x108/0x410 arch/x86/kernel/apic/apic.c:1055 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline] sysvec_apic_timer_interrupt+0xa1/0xc0 arch/x86/kernel/apic/apic.c:1049 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702 RIP: 0010:pv_native_safe_halt+0x13/0x20 arch/x86/kernel/paravirt.c:81 Code: c3 d4 02 00 cc cc cc 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 66 90 0f 00 2d a3 df 11 00 f3 0f 1e fa fb f4 98 d4 02 00 cc cc cc cc cc cc cc cc 90 90 90 90 90 90 90 90 90 RSP: 0018:ffffffff8dc07d80 EFLAGS: 000002c6 RAX: 67e2fc7311f9d600 RBX: ffffffff81977128 RCX: 67e2fc7311f9d600 RDX: 0000000000000001 RSI: ffffffff8d74c01e RDI: ffffffff8bc1d820 RBP: ffffffff8dc07ec0 R08: ffff8880b8832b5b R09: 1ffff1101710656b R10: dffffc0000000000 R11: ffffed101710656c R12: ffffffff8f7efb70 R13: 0000000000000000 R14: 0000000000000000 R15: 1ffffffff1b92a48 arch_safe_halt arch/x86/include/asm/paravirt.h:107 [inline] default_idle+0x13/0x20 arch/x86/kernel/process.c:748 default_idle_call+0x74/0xb0 kernel/sched/idle.c:117 cpuidle_idle_call kernel/sched/idle.c:185 [inline] do_idle+0x1e8/0x510 kernel/sched/idle.c:325 cpu_startup_entry+0x44/0x60 kernel/sched/idle.c:423 rest_init+0x2de/0x300 init/main.c:743 start_kernel+0x470/0x4f0 init/main.c:1099 x86_64_start_reservations+0x2a/0x30 arch/x86/kernel/head64.c:513 x86_64_start_kernel+0x66/0x70 arch/x86/kernel/head64.c:494 common_startup_64+0x13e/0x147 ---------------- Code disassembly (best guess), 2 bytes skipped: 0: 02 00 add (%rax),%al 2: cc int3 3: cc int3 4: cc int3 5: 90 nop 6: 90 nop 7: 90 nop 8: 90 nop 9: 90 nop a: 90 nop b: 90 nop c: 90 nop d: 90 nop e: 90 nop f: 90 nop 10: 90 nop 11: 90 nop 12: 90 nop 13: 90 nop 14: 90 nop 15: f3 0f 1e fa endbr64 19: 66 90 xchg %ax,%ax 1b: 0f 00 2d a3 df 11 00 verw 0x11dfa3(%rip) # 0x11dfc5 22: f3 0f 1e fa endbr64 26: fb sti 27: f4 hlt * 28: e9 98 d4 02 00 jmp 0x2d4c5 <-- trapping instruction 2d: cc int3 2e: cc int3 2f: cc int3 30: cc int3 31: cc int3 32: cc int3 33: cc int3 34: cc int3 35: 90 nop 36: 90 nop 37: 90 nop 38: 90 nop 39: 90 nop 3a: 90 nop 3b: 90 nop 3c: 90 nop 3d: 90 nop