rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 0-...!: (1 GPs behind) idle=0f1/1/0x4000000000000000 softirq=69405/69414 fqs=373
======================================================
WARNING: possible circular locking dependency detected
syzkaller #0 Not tainted
------------------------------------------------------
kworker/u4:5/4272 is trying to acquire lock:
ffffffff8c313500 (console_owner){-.-.}-{0:0}, at: console_lock_spinning_enable+0x2c/0x60 kernel/printk/printk.c:1802
but task is already holding lock:
ffffffff8c322f18 (rcu_node_0){-.-.}-{2:2}, at: print_other_cpu_stall+0x235/0x1270 kernel/rcu/tree_stall.h:551
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #7 (rcu_node_0){-.-.}-{2:2}:
__raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
_raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
check_cb_ovld kernel/rcu/tree.c:2974 [inline]
__call_rcu kernel/rcu/tree.c:3025 [inline]
call_rcu+0x319/0x950 kernel/rcu/tree.c:3091
queue_rcu_work+0x81/0x90 kernel/workqueue.c:1788
kfree_rcu_monitor+0x32a/0x730 kernel/rcu/tree.c:3418
process_one_work+0x85f/0x1010 kernel/workqueue.c:2310
worker_thread+0xaa6/0x1290 kernel/workqueue.c:2457
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
-> #6 (krc.lock){..-.}-{2:2}:
__raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
_raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
krc_this_cpu_lock kernel/rcu/tree.c:3203 [inline]
add_ptr_to_bulk_krc_lock kernel/rcu/tree.c:3510 [inline]
kvfree_call_rcu+0x18d/0x7d0 kernel/rcu/tree.c:3601
trie_update_elem+0x86c/0xc50 kernel/bpf/lpm_trie.c:396
bpf_map_update_value+0x57d/0x650 kernel/bpf/syscall.c:223
generic_map_update_batch+0x52d/0x7d0 kernel/bpf/syscall.c:1430
bpf_map_do_batch+0x466/0x600 kernel/bpf/syscall.c:-1
__sys_bpf+0x671/0x6f0 kernel/bpf/syscall.c:-1
__do_sys_bpf kernel/bpf/syscall.c:4761 [inline]
__se_sys_bpf kernel/bpf/syscall.c:4759 [inline]
__x64_sys_bpf+0x78/0x90 kernel/bpf/syscall.c:4759
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
-> #5 (&trie->lock){....}-{2:2}:
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0xb0/0x100 kernel/locking/spinlock.c:162
trie_delete_elem+0x90/0x710 kernel/bpf/lpm_trie.c:467
bpf_prog_4490a1fa889e86f9+0x7ee/0xe88
bpf_dispatcher_nop_func include/linux/bpf.h:888 [inline]
__bpf_prog_run include/linux/filter.h:628 [inline]
bpf_prog_run include/linux/filter.h:635 [inline]
__bpf_trace_run kernel/trace/bpf_trace.c:1878 [inline]
bpf_trace_run2+0x163/0x2e0 kernel/trace/bpf_trace.c:1915
trace_tlb_flush+0xe6/0x110 include/trace/events/tlb.h:38
switch_mm_irqs_off+0x6f3/0x9b0 arch/x86/mm/tlb.c:-1
context_switch kernel/sched/core.c:5035 [inline]
__schedule+0x1079/0x43c0 kernel/sched/core.c:6395
schedule+0x11b/0x1e0 kernel/sched/core.c:6478
exit_to_user_mode_loop+0x47/0x130 kernel/entry/common.c:169
exit_to_user_mode_prepare+0xee/0x180 kernel/entry/common.c:214
irqentry_exit_to_user_mode+0x5/0x30 kernel/entry/common.c:320
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
-> #4 (&rq->__lock){-.-.}-{2:2}:
_raw_spin_lock_nested+0x2e/0x40 kernel/locking/spinlock.c:368
raw_spin_rq_lock_nested+0x26/0x140 kernel/sched/core.c:475
raw_spin_rq_lock kernel/sched/sched.h:1326 [inline]
rq_lock kernel/sched/sched.h:1621 [inline]
task_fork_fair+0x5c/0x350 kernel/sched/fair.c:11499
sched_cgroup_fork+0x2c6/0x320 kernel/sched/core.c:4485
copy_process+0x22f6/0x3e20 kernel/fork.c:2395
kernel_clone+0x23f/0x990 kernel/fork.c:2679
kernel_thread+0xfa/0x160 kernel/fork.c:2731
rest_init+0x21/0x330 init/main.c:720
start_kernel+0x489/0x540 init/main.c:1154
secondary_startup_64_no_verify+0xb1/0xbb
-> #3 (&p->pi_lock){-.-.}-{2:2}:
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0xb0/0x100 kernel/locking/spinlock.c:162
try_to_wake_up+0x5c/0x1050 kernel/sched/core.c:4049
__wake_up_common+0x2a4/0x4e0 kernel/sched/wait.c:108
__wake_up_common_lock kernel/sched/wait.c:138 [inline]
__wake_up+0x10e/0x180 kernel/sched/wait.c:157
tty_port_default_wakeup+0xa5/0xf0 drivers/tty/tty_port.c:51
serial8250_tx_chars+0x629/0x830 drivers/tty/serial/8250/8250_port.c:1828
serial8250_handle_irq+0x519/0x610 drivers/tty/serial/8250/8250_port.c:1924
serial8250_default_handle_irq+0xb4/0x1a0 drivers/tty/serial/8250/8250_port.c:1941
serial8250_interrupt+0x9b/0x1c0 drivers/tty/serial/8250/8250_core.c:127
__handle_irq_event_percpu+0x299/0x9d0 kernel/irq/handle.c:156
handle_irq_event_percpu kernel/irq/handle.c:196 [inline]
handle_irq_event+0xa5/0x220 kernel/irq/handle.c:213
handle_edge_irq+0x243/0xb20 kernel/irq/chip.c:819
generic_handle_irq_desc include/linux/irqdesc.h:158 [inline]
handle_irq arch/x86/kernel/irq.c:233 [inline]
__common_interrupt+0xd7/0x1e0 arch/x86/kernel/irq.c:252
common_interrupt+0xb0/0xd0 arch/x86/kernel/irq.c:242
asm_common_interrupt+0x22/0x40 arch/x86/include/asm/idtentry.h:667
lock_acquire+0x208/0x400 kernel/locking/lockdep.c:5627
__raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
_raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
spin_lock include/linux/spinlock.h:364 [inline]
browse_rb mm/mmap.c:356 [inline]
validate_mm+0x31a/0x950 mm/mmap.c:423
mmap_region+0xd82/0x1650 mm/mmap.c:2939
do_mmap+0x819/0xe90 mm/mmap.c:1586
vm_mmap_pgoff+0x1c1/0x2d0 mm/util.c:551
ksys_mmap_pgoff+0x54b/0x790 mm/mmap.c:1635
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
-> #2 (&tty->write_wait){-.-.}-{2:2}:
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0xb0/0x100 kernel/locking/spinlock.c:162
__wake_up_common_lock kernel/sched/wait.c:137 [inline]
__wake_up+0xf4/0x180 kernel/sched/wait.c:157
tty_port_default_wakeup+0xa5/0xf0 drivers/tty/tty_port.c:51
serial8250_tx_chars+0x629/0x830 drivers/tty/serial/8250/8250_port.c:1828
serial8250_handle_irq+0x519/0x610 drivers/tty/serial/8250/8250_port.c:1924
serial8250_default_handle_irq+0xb4/0x1a0 drivers/tty/serial/8250/8250_port.c:1941
serial8250_interrupt+0x9b/0x1c0 drivers/tty/serial/8250/8250_core.c:127
__handle_irq_event_percpu+0x299/0x9d0 kernel/irq/handle.c:156
handle_irq_event_percpu kernel/irq/handle.c:196 [inline]
handle_irq_event+0xa5/0x220 kernel/irq/handle.c:213
handle_edge_irq+0x243/0xb20 kernel/irq/chip.c:819
generic_handle_irq_desc include/linux/irqdesc.h:158 [inline]
handle_irq arch/x86/kernel/irq.c:233 [inline]
__common_interrupt+0xd7/0x1e0 arch/x86/kernel/irq.c:252
common_interrupt+0xb0/0xd0 arch/x86/kernel/irq.c:242
asm_common_interrupt+0x22/0x40 arch/x86/include/asm/idtentry.h:667
__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline]
_raw_spin_unlock_irqrestore+0xbc/0x120 kernel/locking/spinlock.c:194
spin_unlock_irqrestore include/linux/spinlock.h:419 [inline]
uart_write+0x62f/0x880 drivers/tty/serial/serial_core.c:592
process_output_block drivers/tty/n_tty.c:592 [inline]
n_tty_write+0xd2e/0x1210 drivers/tty/n_tty.c:2339
do_tty_write drivers/tty/tty_io.c:1038 [inline]
file_tty_write+0x557/0x910 drivers/tty/tty_io.c:1110
call_write_iter include/linux/fs.h:2173 [inline]
new_sync_write fs/read_write.c:507 [inline]
vfs_write+0x745/0xd60 fs/read_write.c:594
ksys_write+0x152/0x260 fs/read_write.c:647
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x66/0xd0
-> #1 (&port_lock_key){-.-.}-{2:2}:
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0xb0/0x100 kernel/locking/spinlock.c:162
serial8250_console_write+0x178/0x1000 drivers/tty/serial/8250/8250_port.c:3362
call_console_drivers kernel/printk/printk.c:-1 [inline]
console_unlock+0xb9a/0x1120 kernel/printk/printk.c:2744
vprintk_emit+0xc0/0x150 kernel/printk/printk.c:2274
_printk+0xda/0x130 kernel/printk/printk.c:2299
register_console+0x699/0x980 kernel/printk/printk.c:3107
univ8250_console_init+0x41/0x50 drivers/tty/serial/8250/8250_core.c:690
console_init+0x177/0x5d0 kernel/printk/printk.c:3207
start_kernel+0x2fc/0x540 init/main.c:1090
secondary_startup_64_no_verify+0xb1/0xbb
-> #0 (console_owner){-.-.}-{0:0}:
check_prev_add kernel/locking/lockdep.c:3053 [inline]
check_prevs_add kernel/locking/lockdep.c:3172 [inline]
validate_chain kernel/locking/lockdep.c:3788 [inline]
__lock_acquire+0x2c42/0x7d10 kernel/locking/lockdep.c:5012
lock_acquire+0x19e/0x400 kernel/locking/lockdep.c:5623
console_lock_spinning_enable+0x51/0x60 kernel/printk/printk.c:1805
console_unlock+0x8b6/0x1120 kernel/printk/printk.c:2741
vprintk_emit+0xc0/0x150 kernel/printk/printk.c:2274
_printk+0xda/0x130 kernel/printk/printk.c:2299
print_cpu_stall_info+0x524/0x6d0 kernel/rcu/tree_stall.h:445
print_other_cpu_stall+0x37e/0x1270 kernel/rcu/tree_stall.h:555
check_cpu_stall kernel/rcu/tree_stall.h:745 [inline]
rcu_pending kernel/rcu/tree.c:3936 [inline]
rcu_sched_clock_irq+0x843/0x1120 kernel/rcu/tree.c:2619
update_process_times+0x193/0x200 kernel/time/timer.c:1818
tick_sched_handle kernel/time/tick-sched.c:254 [inline]
tick_sched_timer+0x37d/0x560 kernel/time/tick-sched.c:1473
__run_hrtimer kernel/time/hrtimer.c:1685 [inline]
__hrtimer_run_queues+0x4ad/0xb70 kernel/time/hrtimer.c:1749
hrtimer_interrupt+0x3bb/0x8d0 kernel/time/hrtimer.c:1811
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1097 [inline]
__sysvec_apic_timer_interrupt+0x137/0x4a0 arch/x86/kernel/apic/apic.c:1114
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1108 [inline]
sysvec_apic_timer_interrupt+0x9b/0xc0 arch/x86/kernel/apic/apic.c:1108
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
kvm_wait+0x159/0x1b0 arch/x86/kernel/kvm.c:918
pv_wait arch/x86/include/asm/paravirt.h:597 [inline]
pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline]
__pv_queued_spin_lock_slowpath+0x60f/0x9c0 kernel/locking/qspinlock.c:508
pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
queued_spin_lock_slowpath+0x43/0x50 arch/x86/include/asm/qspinlock.h:51
queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
do_raw_spin_lock+0x265/0x2f0 kernel/locking/spinlock_debug.c:115
page_vma_mapped_walk+0x1468/0x1740 mm/page_vma_mapped.c:-1
page_mkclean_one+0x17d/0x3e0 mm/rmap.c:926
rmap_walk_file+0x408/0x610 mm/rmap.c:2378
rmap_walk mm/rmap.c:2396 [inline]
page_mkclean+0x2f4/0x400 mm/rmap.c:1006
clear_page_dirty_for_io+0x3f8/0x9f0 mm/page-writeback.c:2749
mpage_submit_page+0x8a/0x210 fs/ext4/inode.c:2093
mpage_process_page_bufs+0x6d8/0x8b0 fs/ext4/inode.c:2227
mpage_prepare_extent_to_map+0xbc2/0xfe0 fs/ext4/inode.c:2655
ext4_writepages+0xa9a/0x2df0 fs/ext4/inode.c:2783
do_writepages+0x476/0x6e0 mm/page-writeback.c:2386
__writeback_single_inode+0x153/0xda0 fs/fs-writeback.c:1657
writeback_sb_inodes+0xa4e/0x1680 fs/fs-writeback.c:1940
__writeback_inodes_wb+0x12a/0x3f0 fs/fs-writeback.c:2011
wb_writeback+0x46f/0xbe0 fs/fs-writeback.c:2116
wb_check_old_data_flush fs/fs-writeback.c:2216 [inline]
wb_do_writeback fs/fs-writeback.c:2269 [inline]
wb_workfn+0xb15/0xf20 fs/fs-writeback.c:2298
process_one_work+0x85f/0x1010 kernel/workqueue.c:2310
worker_thread+0xaa6/0x1290 kernel/workqueue.c:2457
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
other info that might help us debug this:
Chain exists of:
console_owner --> krc.lock --> rcu_node_0
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(rcu_node_0);
lock(krc.lock);
lock(rcu_node_0);
lock(console_owner);
*** DEADLOCK ***
8 locks held by kworker/u4:5/4272:
#0: ffff8881423a0138 ((wq_completion)writeback){+.+.}-{0:0}, at: process_one_work+0x761/0x1010 kernel/workqueue.c:-1
#1: ffffc900033ffd00 ((work_completion)(&(&wb->dwork)->work)){+.+.}-{0:0}, at: process_one_work+0x79f/0x1010 kernel/workqueue.c:2285
#2: ffff88802cf120e0 (&type->s_umount_key#32){++++}-{3:3}, at: trylock_super+0x1c/0xf0 fs/super.c:418
#3: ffff88802cf14bd8 (&sbi->s_writepages_rwsem){.+.+}-{0:0}, at: ext4_writepages+0x20f/0x2df0 fs/ext4/inode.c:2689
#4: ffff8880748b4c10 (&mapping->i_mmap_rwsem){++++}-{3:3}, at: i_mmap_lock_read include/linux/fs.h:517 [inline]
#4: ffff8880748b4c10 (&mapping->i_mmap_rwsem){++++}-{3:3}, at: rmap_walk_file+0x2b6/0x610 mm/rmap.c:2367
#5: ffff888076156078 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: page_vma_mapped_walk+0x1468/0x1740 mm/page_vma_mapped.c:-1
#6: ffffffff8c322f18 (rcu_node_0){-.-.}-{2:2}, at: print_other_cpu_stall+0x235/0x1270 kernel/rcu/tree_stall.h:551
#7: ffffffff8c3135e0 (console_lock){+.+.}-{0:0}, at: vprintk_emit+0xa7/0x150 kernel/printk/printk.c:2273
stack backtrace:
CPU: 1 PID: 4272 Comm: kworker/u4:5 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: writeback wb_workfn (flush-8:0)
Call Trace:
dump_stack_lvl+0x188/0x250 lib/dump_stack.c:106
check_noncircular+0x296/0x330 kernel/locking/lockdep.c:2133
check_prev_add kernel/locking/lockdep.c:3053 [inline]
check_prevs_add kernel/locking/lockdep.c:3172 [inline]
validate_chain kernel/locking/lockdep.c:3788 [inline]
__lock_acquire+0x2c42/0x7d10 kernel/locking/lockdep.c:5012
lock_acquire+0x19e/0x400 kernel/locking/lockdep.c:5623
console_lock_spinning_enable+0x51/0x60 kernel/printk/printk.c:1805
console_unlock+0x8b6/0x1120 kernel/printk/printk.c:2741
vprintk_emit+0xc0/0x150 kernel/printk/printk.c:2274
_printk+0xda/0x130 kernel/printk/printk.c:2299
print_cpu_stall_info+0x524/0x6d0 kernel/rcu/tree_stall.h:445
print_other_cpu_stall+0x37e/0x1270 kernel/rcu/tree_stall.h:555
check_cpu_stall kernel/rcu/tree_stall.h:745 [inline]
rcu_pending kernel/rcu/tree.c:3936 [inline]
rcu_sched_clock_irq+0x843/0x1120 kernel/rcu/tree.c:2619
update_process_times+0x193/0x200 kernel/time/timer.c:1818
tick_sched_handle kernel/time/tick-sched.c:254 [inline]
tick_sched_timer+0x37d/0x560 kernel/time/tick-sched.c:1473
__run_hrtimer kernel/time/hrtimer.c:1685 [inline]
__hrtimer_run_queues+0x4ad/0xb70 kernel/time/hrtimer.c:1749
hrtimer_interrupt+0x3bb/0x8d0 kernel/time/hrtimer.c:1811
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1097 [inline]
__sysvec_apic_timer_interrupt+0x137/0x4a0 arch/x86/kernel/apic/apic.c:1114
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1108 [inline]
sysvec_apic_timer_interrupt+0x9b/0xc0 arch/x86/kernel/apic/apic.c:1108
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
RIP: 0010:native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
RIP: 0010:arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
RIP: 0010:kvm_wait+0x159/0x1b0 arch/x86/kernel/kvm.c:918
Code: 89 df 48 89 f8 48 c1 e8 03 42 0f b6 04 30 84 c0 75 4b 0f b6 1f e8 e7 b1 4a 00 44 38 e3 75 10 66 90 0f 00 2d 99 e2 f3 08 fb f4 16 ff ff ff fb e9 10 ff ff ff e8 47 4f 87 08 89 f9 80 e1 07 38
RSP: 0018:ffffc900033fe5c0 EFLAGS: 00000246
RAX: 151523b2f5eadf00 RBX: 0000000000000003 RCX: 151523b2f5eadf00
RDX: dffffc0000000000 RSI: ffffffff8a2b2780 RDI: ffffffff8a79f780
RBP: ffffc900033fe670 R08: ffffffff901d10c7 R09: 1ffffffff203a218
R10: dffffc0000000000 R11: fffffbfff203a219 R12: 0000000000000003
R13: ffff8880b913b154 R14: dffffc0000000000 R15: 1ffff9200067fcb8
pv_wait arch/x86/include/asm/paravirt.h:597 [inline]
pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline]
__pv_queued_spin_lock_slowpath+0x60f/0x9c0 kernel/locking/qspinlock.c:508
pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
queued_spin_lock_slowpath+0x43/0x50 arch/x86/include/asm/qspinlock.h:51
queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
do_raw_spin_lock+0x265/0x2f0 kernel/locking/spinlock_debug.c:115
page_vma_mapped_walk+0x1468/0x1740 mm/page_vma_mapped.c:-1
page_mkclean_one+0x17d/0x3e0 mm/rmap.c:926
rmap_walk_file+0x408/0x610 mm/rmap.c:2378
rmap_walk mm/rmap.c:2396 [inline]
page_mkclean+0x2f4/0x400 mm/rmap.c:1006
clear_page_dirty_for_io+0x3f8/0x9f0 mm/page-writeback.c:2749
mpage_submit_page+0x8a/0x210 fs/ext4/inode.c:2093
mpage_process_page_bufs+0x6d8/0x8b0 fs/ext4/inode.c:2227
mpage_prepare_extent_to_map+0xbc2/0xfe0 fs/ext4/inode.c:2655
ext4_writepages+0xa9a/0x2df0 fs/ext4/inode.c:2783
do_writepages+0x476/0x6e0 mm/page-writeback.c:2386
__writeback_single_inode+0x153/0xda0 fs/fs-writeback.c:1657
writeback_sb_inodes+0xa4e/0x1680 fs/fs-writeback.c:1940
__writeback_inodes_wb+0x12a/0x3f0 fs/fs-writeback.c:2011
wb_writeback+0x46f/0xbe0 fs/fs-writeback.c:2116
wb_check_old_data_flush fs/fs-writeback.c:2216 [inline]
wb_do_writeback fs/fs-writeback.c:2269 [inline]
wb_workfn+0xb15/0xf20 fs/fs-writeback.c:2298
process_one_work+0x85f/0x1010 kernel/workqueue.c:2310
worker_thread+0xaa6/0x1290 kernel/workqueue.c:2457
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
(detected by 1, t=10505 jiffies, g=94413, q=470)
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 22652 Comm: syz.4.6363 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
RIP: 0010:arch_static_branch arch/x86/include/asm/jump_label.h:27 [inline]
RIP: 0010:static_key_false include/linux/jump_label.h:212 [inline]
RIP: 0010:native_write_msr arch/x86/include/asm/msr.h:156 [inline]
RIP: 0010:wrmsr arch/x86/include/asm/msr.h:263 [inline]
RIP: 0010:native_apic_msr_write+0x35/0x50 arch/x86/include/asm/apic.h:208
Code: 74 2a 83 ff 30 74 25 eb 10 81 ff d0 00 00 00 74 1b 81 ff e0 00 00 00 74 13 c1 ef 04 81 c7 00 08 00 00 89 f9 89 f0 31 d2 0f 30 <66> 90 c3 89 f6 31 d2 e9 7f 39 d0 02 66 2e 0f 1f 84 00 00 00 00 00
RSP: 0018:ffffc9000314ec88 EFLAGS: 00000046
RAX: 00000000000000f6 RBX: ffffffff8be30a20 RCX: 000000000000083f
RDX: 0000000000000000 RSI: 00000000000000f6 RDI: 000000000000083f
RBP: 0000000000000000 R08: ffff8880b9033d77 R09: 1ffff110172067ae
R10: dffffc0000000000 R11: ffffed10172067af R12: 0000000000000000
R13: dffffc0000000001 R14: dffffc0000000000 R15: 0000000000000000
FS: 0000000000000000(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fdc66f5f400 CR3: 000000001ffb6000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
arch_irq_work_raise+0x82/0xd0 arch/x86/kernel/irq_work.c:31
irq_work_queue_on+0x11e/0x220 kernel/irq_work.c:109
rcu_read_unlock_special+0x37b/0x4a0 kernel/rcu/tree_plugin.h:667
__rcu_read_unlock+0x78/0xd0 kernel/rcu/tree_plugin.h:422
rcu_read_unlock include/linux/rcupdate.h:772 [inline]
__perf_event_output kernel/events/core.c:7813 [inline]
perf_event_output_forward+0x255/0x2e0 kernel/events/core.c:7822
__perf_event_overflow+0x364/0x530 kernel/events/core.c:9515
perf_tp_event+0x383/0xbf0 kernel/events/core.c:10047
perf_trace_run_bpf_submit+0xf3/0x1c0 kernel/events/core.c:10021
perf_trace_preemptirq_template+0x2aa/0x360 include/trace/events/preemptirq.h:14
trace_irq_enable_rcuidle+0x108/0x180 include/trace/events/preemptirq.h:40
trace_hardirqs_on+0x57/0x80 kernel/trace/trace_preemptirq.c:44
asm_sysvec_irq_work+0x16/0x20 arch/x86/include/asm/idtentry.h:713
RIP: 0010:rcu_read_unlock_special+0x7f/0x4a0 kernel/rcu/tree_plugin.h:674
Code: eb 03 48 b8 f1 f1 f1 f1 f8 f2 f2 f2 4a 89 04 2b 42 c7 44 2b 08 f8 f3 f3 f3 65 44 8b 35 c2 ef 9c 7e 41 f7 c6 00 00 f0 00 74 40 <48> c7 44 24 20 0e 36 e0 45 4a c7 04 2b 00 00 00 00 42 c7 44 2b 08
RSP: 0018:ffffc9000314f420 EFLAGS: 00000206
RAX: dc133a61a34dde00 RBX: 1ffff92000629e88 RCX: dc133a61a34dde00
RDX: dffffc0000000000 RSI: ffffffff8a2b2780 RDI: ffffffff8a79f780
RBP: ffffc9000314f4f0 R08: ffffffff901d10c7 R09: 1ffffffff203a218
R10: dffffc0000000000 R11: fffffbfff203a219 R12: ffffffff8c322f00
R13: dffffc0000000000 R14: 0000000000000246 R15: 0000000000000001
__rcu_read_unlock+0x78/0xd0 kernel/rcu/tree_plugin.h:422
rcu_read_unlock include/linux/rcupdate.h:772 [inline]
__unlock_page_memcg+0xea/0x100 mm/memcontrol.c:2093
zap_pte_range mm/memory.c:1384 [inline]
zap_pmd_range mm/memory.c:1505 [inline]
zap_pud_range mm/memory.c:1534 [inline]
zap_p4d_range mm/memory.c:1555 [inline]
unmap_page_range+0xf96/0x2500 mm/memory.c:1576
unmap_vmas+0x131/0x250 mm/memory.c:1653
exit_mmap+0x3b9/0x640 mm/mmap.c:3216
__mmput+0x115/0x3b0 kernel/fork.c:1127
exit_mm+0x588/0x6e0 kernel/exit.c:550
do_exit+0x5a9/0x20c0 kernel/exit.c:870
do_group_exit+0x12e/0x300 kernel/exit.c:997
get_signal+0x6ca/0x12c0 kernel/signal.c:2900
arch_do_signal_or_restart+0xe7/0x12c0 arch/x86/kernel/signal.c:867
handle_signal_work kernel/entry/common.c:154 [inline]
exit_to_user_mode_loop+0x9e/0x130 kernel/entry/common.c:178
exit_to_user_mode_prepare+0xee/0x180 kernel/entry/common.c:214
__syscall_exit_to_user_mode_work kernel/entry/common.c:296 [inline]
syscall_exit_to_user_mode+0x16/0x40 kernel/entry/common.c:307
do_syscall_64+0x58/0xa0 arch/x86/entry/common.c:86
entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f91bb015cb9
Code: Unable to access opcode bytes at RIP 0x7f91bb015c8f.
RSP: 002b:00007f91b92710e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffe00 RBX: 00007f91bb290fa8 RCX: 00007f91bb015cb9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f91bb290fa8
RBP: 00007f91bb290fa0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f91bb291038 R14: 00007ffc2158ce00 R15: 00007ffc2158cee8
rcu: rcu_preempt kthread timer wakeup didn't happen for 8639 jiffies! g94413 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: Possible timer handling issue on cpu=1 timer-softirq=51433
rcu: rcu_preempt kthread starved for 8640 jiffies! g94413 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=1
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:I stack:26864 pid: 15 ppid: 2 flags:0x00004000
Call Trace:
context_switch kernel/sched/core.c:5049 [inline]
__schedule+0x11ef/0x43c0 kernel/sched/core.c:6395
schedule+0x11b/0x1e0 kernel/sched/core.c:6478
schedule_timeout+0x184/0x2d0 kernel/time/timer.c:1914
rcu_gp_fqs_loop+0x2be/0x11d0 kernel/rcu/tree.c:1972
rcu_gp_kthread+0x9b/0x370 kernel/rcu/tree.c:2145
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
rcu: Stack dump where RCU GP kthread last ran:
NMI backtrace for cpu 1
CPU: 1 PID: 4272 Comm: kworker/u4:5 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: writeback wb_workfn (flush-8:0)
Call Trace:
dump_stack_lvl+0x188/0x250 lib/dump_stack.c:106
nmi_cpu_backtrace+0x3a2/0x3d0 lib/nmi_backtrace.c:111
nmi_trigger_cpumask_backtrace+0x163/0x280 lib/nmi_backtrace.c:62
trigger_single_cpu_backtrace include/linux/nmi.h:166 [inline]
rcu_check_gp_kthread_starvation+0x1cd/0x250 kernel/rcu/tree_stall.h:487
print_other_cpu_stall+0x1110/0x1270 kernel/rcu/tree_stall.h:592
check_cpu_stall kernel/rcu/tree_stall.h:745 [inline]
rcu_pending kernel/rcu/tree.c:3936 [inline]
rcu_sched_clock_irq+0x843/0x1120 kernel/rcu/tree.c:2619
update_process_times+0x193/0x200 kernel/time/timer.c:1818
tick_sched_handle kernel/time/tick-sched.c:254 [inline]
tick_sched_timer+0x37d/0x560 kernel/time/tick-sched.c:1473
__run_hrtimer kernel/time/hrtimer.c:1685 [inline]
__hrtimer_run_queues+0x4ad/0xb70 kernel/time/hrtimer.c:1749
hrtimer_interrupt+0x3bb/0x8d0 kernel/time/hrtimer.c:1811
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1097 [inline]
__sysvec_apic_timer_interrupt+0x137/0x4a0 arch/x86/kernel/apic/apic.c:1114
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1108 [inline]
sysvec_apic_timer_interrupt+0x9b/0xc0 arch/x86/kernel/apic/apic.c:1108
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
RIP: 0010:native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
RIP: 0010:arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
RIP: 0010:kvm_wait+0x159/0x1b0 arch/x86/kernel/kvm.c:918
Code: 89 df 48 89 f8 48 c1 e8 03 42 0f b6 04 30 84 c0 75 4b 0f b6 1f e8 e7 b1 4a 00 44 38 e3 75 10 66 90 0f 00 2d 99 e2 f3 08 fb f4 16 ff ff ff fb e9 10 ff ff ff e8 47 4f 87 08 89 f9 80 e1 07 38
RSP: 0018:ffffc900033fe5c0 EFLAGS: 00000246
RAX: 151523b2f5eadf00 RBX: 0000000000000003 RCX: 151523b2f5eadf00
RDX: dffffc0000000000 RSI: ffffffff8a2b2780 RDI: ffffffff8a79f780
RBP: ffffc900033fe670 R08: ffffffff901d10c7 R09: 1ffffffff203a218
R10: dffffc0000000000 R11: fffffbfff203a219 R12: 0000000000000003
R13: ffff8880b913b154 R14: dffffc0000000000 R15: 1ffff9200067fcb8
pv_wait arch/x86/include/asm/paravirt.h:597 [inline]
pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline]
__pv_queued_spin_lock_slowpath+0x60f/0x9c0 kernel/locking/qspinlock.c:508
pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
queued_spin_lock_slowpath+0x43/0x50 arch/x86/include/asm/qspinlock.h:51
queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
do_raw_spin_lock+0x265/0x2f0 kernel/locking/spinlock_debug.c:115
page_vma_mapped_walk+0x1468/0x1740 mm/page_vma_mapped.c:-1
page_mkclean_one+0x17d/0x3e0 mm/rmap.c:926
rmap_walk_file+0x408/0x610 mm/rmap.c:2378
rmap_walk mm/rmap.c:2396 [inline]
page_mkclean+0x2f4/0x400 mm/rmap.c:1006
clear_page_dirty_for_io+0x3f8/0x9f0 mm/page-writeback.c:2749
mpage_submit_page+0x8a/0x210 fs/ext4/inode.c:2093
mpage_process_page_bufs+0x6d8/0x8b0 fs/ext4/inode.c:2227
mpage_prepare_extent_to_map+0xbc2/0xfe0 fs/ext4/inode.c:2655
ext4_writepages+0xa9a/0x2df0 fs/ext4/inode.c:2783
do_writepages+0x476/0x6e0 mm/page-writeback.c:2386
__writeback_single_inode+0x153/0xda0 fs/fs-writeback.c:1657
writeback_sb_inodes+0xa4e/0x1680 fs/fs-writeback.c:1940
__writeback_inodes_wb+0x12a/0x3f0 fs/fs-writeback.c:2011
wb_writeback+0x46f/0xbe0 fs/fs-writeback.c:2116
wb_check_old_data_flush fs/fs-writeback.c:2216 [inline]
wb_do_writeback fs/fs-writeback.c:2269 [inline]
wb_workfn+0xb15/0xf20 fs/fs-writeback.c:2298
process_one_work+0x85f/0x1010 kernel/workqueue.c:2310
worker_thread+0xaa6/0x1290 kernel/workqueue.c:2457
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287