rcu: INFO: rcu_preempt detected stalls on CPUs/tasks: rcu: 1-...!: (1 GPs behind) idle=6c24/1/0x4000000000000000 softirq=18065/18080 fqs=102 rcu: (detected by 0, t=10502 jiffies, g=21469, q=1591 ncpus=2) Sending NMI from CPU 0 to CPUs 1: NMI backtrace for cpu 1 CPU: 1 PID: 5065 Comm: kworker/1:4 Not tainted 6.5.0-rc2-syzkaller-00573-gec87f05402f5 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2023 Workqueue: events nsim_dev_trap_report_work RIP: 0010:hlock_class kernel/locking/lockdep.c:228 [inline] RIP: 0010:__lock_acquire+0x15eb/0x5de0 kernel/locking/lockdep.c:5140 Code: f8 66 81 e3 ff 1f 0f b7 db be 08 00 00 00 48 89 d8 48 c1 e8 06 48 8d 3c c5 80 ee 84 91 e8 cd d4 73 00 48 0f a3 1d b5 b4 1d 10 <0f> 83 cf 12 00 00 48 69 db d0 00 00 00 48 81 c3 a0 f2 84 91 48 8d RSP: 0018:ffffc900001e0b20 EFLAGS: 00000047 RAX: 0000000000000001 RBX: 000000000000071b RCX: ffffffff816739c3 RDX: fffffbfff2309ded RSI: 0000000000000008 RDI: ffffffff9184ef60 RBP: 0000000000000040 R08: 0000000000000000 R09: fffffbfff2309dec R10: ffffffff9184ef67 R11: 0000000000000000 R12: ffff8880265c28fa R13: ffff8880265c28d8 R14: 00000000ffffffff R15: 0000000000000002 FS: 0000000000000000(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000c000c69fc0 CR3: 000000007b42e000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: lock_acquire kernel/locking/lockdep.c:5761 [inline] lock_acquire+0x1ae/0x510 kernel/locking/lockdep.c:5726 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] advance_sched+0xd5/0xc60 net/sched/sch_taprio.c:935 __run_hrtimer kernel/time/hrtimer.c:1688 [inline] __hrtimer_run_queues+0x203/0xc10 kernel/time/hrtimer.c:1752 hrtimer_interrupt+0x31b/0x800 kernel/time/hrtimer.c:1814 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1098 [inline] __sysvec_apic_timer_interrupt+0x14a/0x430 arch/x86/kernel/apic/apic.c:1115 sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1109 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:645 RIP: 0010:queue_delayed_work_on+0x9a/0x130 kernel/workqueue.c:1905 Code: ff 48 89 ee e8 f7 1f 31 00 48 85 ed 75 42 e8 5d 24 31 00 9c 5b 81 e3 00 02 00 00 31 ff 48 89 de e8 db 1f 31 00 48 85 db 75 71 41 24 31 00 44 89 e8 48 83 c4 08 5b 5d 41 5c 41 5d 41 5e 41 5f RSP: 0018:ffffc90003defbf8 EFLAGS: 00000293 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: ffff8880265c1dc0 RSI: ffffffff81555a36 RDI: 0000000000000007 RBP: 0000000000000200 R08: 0000000000000007 R09: 0000000000000000 R10: 0000000000000000 R11: 000000000000004e R12: ffff888015a94300 R13: 0000000000000001 R14: ffff888012870c00 R15: 0000000000000000 queue_delayed_work include/linux/workqueue.h:521 [inline] schedule_delayed_work include/linux/workqueue.h:673 [inline] nsim_dev_trap_report_work+0x9ba/0xc70 drivers/net/netdevsim/dev.c:842 process_one_work+0xaa2/0x16f0 kernel/workqueue.c:2597 worker_thread+0x687/0x1110 kernel/workqueue.c:2748 kthread+0x33a/0x430 kernel/kthread.c:389 ret_from_fork+0x2c/0x70 arch/x86/kernel/process.c:145 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:296 RIP: 0000:0x0 Code: Unable to access opcode bytes at 0xffffffffffffffd6. RSP: 0000:0000000000000000 EFLAGS: 00000000 ORIG_RAX: 0000000000000000 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 rcu: rcu_preempt kthread starved for 10290 jiffies! g21469 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0 rcu: Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior. rcu: RCU grace-period kthread stack dump: task:rcu_preempt state:R running task stack:27536 pid:16 ppid:2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:5381 [inline] __schedule+0xee1/0x59f0 kernel/sched/core.c:6710 schedule+0xe7/0x1b0 kernel/sched/core.c:6786 schedule_timeout+0x157/0x2c0 kernel/time/timer.c:2167 rcu_gp_fqs_loop+0x1ec/0xa50 kernel/rcu/tree.c:1609 rcu_gp_kthread+0x249/0x380 kernel/rcu/tree.c:1808 kthread+0x33a/0x430 kernel/kthread.c:389 ret_from_fork+0x2c/0x70 arch/x86/kernel/process.c:145 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:296 RIP: 0000:0x0 Code: Unable to access opcode bytes at 0xffffffffffffffd6. RSP: 0000:0000000000000000 EFLAGS: 00000000 ORIG_RAX: 0000000000000000 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 rcu: Stack dump where RCU GP kthread last ran: CPU: 0 PID: 47 Comm: kworker/u4:3 Not tainted 6.5.0-rc2-syzkaller-00573-gec87f05402f5 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2023 Workqueue: events_unbound toggle_allocation_gate RIP: 0010:csd_lock_wait kernel/smp.c:296 [inline] RIP: 0010:smp_call_function_many_cond+0x4d6/0x1570 kernel/smp.c:835 Code: 0b 00 85 ed 74 4d 48 b8 00 00 00 00 00 fc ff df 4d 89 fc 4c 89 fd 49 c1 ec 03 83 e5 07 49 01 c4 83 c5 03 e8 1c 5f 0b 00 f3 90 <41> 0f b6 04 24 40 38 c5 7c 08 84 c0 0f 85 3c 0e 00 00 8b 43 08 31 RSP: 0018:ffffc90000b87938 EFLAGS: 00000293 RAX: 0000000000000000 RBX: ffff8880b9943020 RCX: 0000000000000000 RDX: ffff888015ebd940 RSI: ffffffff817b1f14 RDI: 0000000000000005 RBP: 0000000000000003 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: ffffed1017328605 R13: 0000000000000001 R14: ffff8880b983d580 R15: ffff8880b9943028 FS: 0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffffffffffffffd6 CR3: 000000000c776000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: on_each_cpu_cond_mask+0x40/0x90 kernel/smp.c:1003 on_each_cpu include/linux/smp.h:71 [inline] text_poke_sync arch/x86/kernel/alternative.c:2001 [inline] text_poke_bp_batch+0x250/0x780 arch/x86/kernel/alternative.c:2211 text_poke_flush arch/x86/kernel/alternative.c:2402 [inline] text_poke_flush arch/x86/kernel/alternative.c:2399 [inline] text_poke_finish+0x1a/0x30 arch/x86/kernel/alternative.c:2409 arch_jump_label_transform_apply+0x17/0x30 arch/x86/kernel/jump_label.c:146 jump_label_update+0x32e/0x410 kernel/jump_label.c:829 static_key_disable_cpuslocked+0x154/0x1b0 kernel/jump_label.c:235 static_key_disable+0x1a/0x20 kernel/jump_label.c:243 toggle_allocation_gate mm/kfence/core.c:836 [inline] toggle_allocation_gate+0x13f/0x250 mm/kfence/core.c:823 process_one_work+0xaa2/0x16f0 kernel/workqueue.c:2597 worker_thread+0x687/0x1110 kernel/workqueue.c:2748 kthread+0x33a/0x430 kernel/kthread.c:389 ret_from_fork+0x2c/0x70 arch/x86/kernel/process.c:145 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:296 RIP: 0000:0x0 Code: Unable to access opcode bytes at 0xffffffffffffffd6. RSP: 0000:0000000000000000 EFLAGS: 00000000 ORIG_RAX: 0000000000000000 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000