BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:248 in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 17, name: ktimers/0 preempt_count: 1000001, expected: 0 RCU nest depth: 0, expected: 0 locks held by ktimers/0/17: 1, on CPU#0: #0: ffff88803860e3d0 (&kvm->srcu){.?.+}-{0:0}, at: srcu_lock_acquire include/linux/srcu.h:249 [inline] #0: ffff88803860e3d0 (&kvm->srcu){.?.+}-{0:0}, at: srcu_read_lock include/linux/srcu.h:356 [inline] #0: ffff88803860e3d0 (&kvm->srcu){.?.+}-{0:0}, at: kvm_xen_set_evtchn_fast+0x1c4/0x8a0 arch/x86/kvm/xen.c:1870 irq event stamp: 11279882 hardirqs last enabled at (11279881): [] raw_spin_rq_unlock_irq kernel/sched/sched.h:1719 [inline] hardirqs last enabled at (11279881): [] finish_lock_switch kernel/sched/core.c:5315 [inline] hardirqs last enabled at (11279881): [] finish_task_switch+0x40e/0xc60 kernel/sched/core.c:5433 hardirqs last disabled at (11279882): [] sysvec_apic_timer_interrupt+0xe/0xc0 arch/x86/kernel/apic/apic.c:1062 softirqs last enabled at (11279878): [] ksoftirqd_run_end kernel/softirq.c:348 [inline] softirqs last enabled at (11279878): [] run_ktimerd+0x8c/0x100 kernel/softirq.c:1210 softirqs last disabled at (11279860): [] smpboot_thread_fn+0x5f8/0xb30 kernel/smpboot.c:162 Preemption disabled at: [] __schedule_loop kernel/sched/core.c:7465 [inline] [] schedule+0x15d/0x2b0 kernel/sched/core.c:7481 CPU: 0 UID: 0 PID: 17 Comm: ktimers/0 Tainted: G L syzkaller #0 PREEMPT_{RT,(full)} Tainted: [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/06/2026 Call Trace: dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 __might_resched+0x31b/0x470 kernel/sched/core.c:9202 rt_read_lock+0xa9/0x4b0 kernel/locking/spinlock_rt.c:248 kvm_xen_set_evtchn_fast+0x1fc/0x8a0 arch/x86/kvm/xen.c:1872 xen_timer_callback+0x109/0x220 arch/x86/kvm/xen.c:139 __run_hrtimer kernel/time/hrtimer.c:2079 [inline] __hrtimer_run_queues+0x3a0/0xaf0 kernel/time/hrtimer.c:2136 hrtimer_interrupt+0x4c2/0xa80 kernel/time/hrtimer.c:2255 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1051 [inline] __sysvec_apic_timer_interrupt+0x102/0x430 arch/x86/kernel/apic/apic.c:1068 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0xa1/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:finish_task_switch+0x413/0xc60 kernel/sched/core.c:5435 Code: 04 00 00 41 c7 84 24 20 0e 00 00 00 00 00 00 0f 1f 44 00 00 49 83 c4 48 4c 89 e7 e8 a7 eb e2 09 e8 32 9f 39 00 fb 4c 8b 65 c8 <49> 8d bc 24 00 17 00 00 48 89 f8 48 c1 e8 03 42 0f b6 04 30 84 c0 RSP: 0018:ffffc90000167ae0 EFLAGS: 00000206 RAX: 0000000000ac1e09 RBX: ffff8880b843db20 RCX: 8000000000000001 RDX: 0000000000000000 RSI: ffffffff8dafb450 RDI: ffffffff8bed2880 RBP: ffffc90000167b30 R08: ffffffff90d59fbf R09: 1ffffffff21ab3f7 R10: dffffc0000000000 R11: fffffbfff21ab3f8 R12: ffff88801ded5dc0 R13: ffff88801ded5dc0 R14: dffffc0000000000 R15: 1ffff11017087b64 context_switch kernel/sched/core.c:5587 [inline] __schedule+0x1770/0x5780 kernel/sched/core.c:7389 __schedule_loop kernel/sched/core.c:7466 [inline] schedule+0x164/0x2b0 kernel/sched/core.c:7481 smpboot_thread_fn+0x625/0xb30 kernel/smpboot.c:158 kthread+0x38b/0x470 kernel/kthread.c:436 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 ============================= [ BUG: Invalid wait context ] syzkaller #0 Tainted: G W L ----------------------------- ktimers/0/17 is trying to lock: ffff88803860ddc8 (&gpc->lock){....}-{3:3}, at: kvm_xen_set_evtchn_fast+0x1fc/0x8a0 arch/x86/kvm/xen.c:1872 other info that might help us debug this: context-{2:2} locks held by ktimers/0/17: 1, on CPU#0: #0: ffff88803860e3d0 (&kvm->srcu){.?.+}-{0:0}, at: srcu_lock_acquire include/linux/srcu.h:249 [inline] #0: ffff88803860e3d0 (&kvm->srcu){.?.+}-{0:0}, at: srcu_read_lock include/linux/srcu.h:356 [inline] #0: ffff88803860e3d0 (&kvm->srcu){.?.+}-{0:0}, at: kvm_xen_set_evtchn_fast+0x1c4/0x8a0 arch/x86/kvm/xen.c:1870 stack backtrace: CPU: 0 UID: 0 PID: 17 Comm: ktimers/0 Tainted: G W L syzkaller #0 PREEMPT_{RT,(full)} Tainted: [W]=WARN, [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 11/06/2026 Call Trace: dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 print_lock_invalid_wait_context kernel/locking/lockdep.c:4874 [inline] check_wait_context kernel/locking/lockdep.c:4946 [inline] __lock_acquire+0xf5b/0x2de0 kernel/locking/lockdep.c:5238 lock_acquire+0x115/0x350 kernel/locking/lockdep.c:5942 rt_read_lock+0xcc/0x4b0 kernel/locking/spinlock_rt.c:249 kvm_xen_set_evtchn_fast+0x1fc/0x8a0 arch/x86/kvm/xen.c:1872 xen_timer_callback+0x109/0x220 arch/x86/kvm/xen.c:139 __run_hrtimer kernel/time/hrtimer.c:2079 [inline] __hrtimer_run_queues+0x3a0/0xaf0 kernel/time/hrtimer.c:2136 hrtimer_interrupt+0x4c2/0xa80 kernel/time/hrtimer.c:2255 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1051 [inline] __sysvec_apic_timer_interrupt+0x102/0x430 arch/x86/kernel/apic/apic.c:1068 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0xa1/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:finish_task_switch+0x413/0xc60 kernel/sched/core.c:5435 Code: 04 00 00 41 c7 84 24 20 0e 00 00 00 00 00 00 0f 1f 44 00 00 49 83 c4 48 4c 89 e7 e8 a7 eb e2 09 e8 32 9f 39 00 fb 4c 8b 65 c8 <49> 8d bc 24 00 17 00 00 48 89 f8 48 c1 e8 03 42 0f b6 04 30 84 c0 RSP: 0018:ffffc90000167ae0 EFLAGS: 00000206 RAX: 0000000000ac1e09 RBX: ffff8880b843db20 RCX: 8000000000000001 RDX: 0000000000000000 RSI: ffffffff8dafb450 RDI: ffffffff8bed2880 RBP: ffffc90000167b30 R08: ffffffff90d59fbf R09: 1ffffffff21ab3f7 R10: dffffc0000000000 R11: fffffbfff21ab3f8 R12: ffff88801ded5dc0 R13: ffff88801ded5dc0 R14: dffffc0000000000 R15: 1ffff11017087b64 context_switch kernel/sched/core.c:5587 [inline] __schedule+0x1770/0x5780 kernel/sched/core.c:7389 __schedule_loop kernel/sched/core.c:7466 [inline] schedule+0x164/0x2b0 kernel/sched/core.c:7481 smpboot_thread_fn+0x625/0xb30 kernel/smpboot.c:158 kthread+0x38b/0x470 kernel/kthread.c:436 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 ---------------- Code disassembly (best guess), 1 bytes skipped: 0: 00 00 add %al,(%rax) 2: 41 c7 84 24 20 0e 00 movl $0x0,0xe20(%r12) 9: 00 00 00 00 00 e: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 13: 49 83 c4 48 add $0x48,%r12 17: 4c 89 e7 mov %r12,%rdi 1a: e8 a7 eb e2 09 call 0x9e2ebc6 1f: e8 32 9f 39 00 call 0x399f56 24: fb sti 25: 4c 8b 65 c8 mov -0x38(%rbp),%r12 * 29: 49 8d bc 24 00 17 00 lea 0x1700(%r12),%rdi <-- trapping instruction 30: 00 31: 48 89 f8 mov %rdi,%rax 34: 48 c1 e8 03 shr $0x3,%rax 38: 42 0f b6 04 30 movzbl (%rax,%r14,1),%eax 3d: 84 c0 test %al,%al