rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
(detected by 0, t=10502 jiffies, g=226949, q=50)
rcu: All QSes seen, last rcu_preempt kthread activity 10502 (4295076228-4295065726), jiffies_till_next_fqs=1, root ->qsmask 0x0
rcu: rcu_preempt kthread starved for 10502 jiffies! g226949 f0x2 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:28256 pid: 14 ppid: 2 flags:0x00004000
Call Trace:
context_switch kernel/sched/core.c:4683 [inline]
__schedule+0x93a/0x26f0 kernel/sched/core.c:5940
schedule+0xd3/0x270 kernel/sched/core.c:6019
schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1878
rcu_gp_fqs_loop kernel/rcu/tree.c:1996 [inline]
rcu_gp_kthread+0xd34/0x1980 kernel/rcu/tree.c:2169
kthread+0x3e5/0x4d0 kernel/kthread.c:319
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
rcu: Stack dump where RCU GP kthread last ran:
NMI backtrace for cpu 0
CPU: 0 PID: 23210 Comm: syz-executor.2 Not tainted 5.14.0-rc2-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105
nmi_cpu_backtrace.cold+0x44/0xd7 lib/nmi_backtrace.c:105
nmi_trigger_cpumask_backtrace+0x1b3/0x230 lib/nmi_backtrace.c:62
trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline]
rcu_check_gp_kthread_starvation.cold+0x1d1/0x1d6 kernel/rcu/tree_stall.h:479
print_other_cpu_stall kernel/rcu/tree_stall.h:584 [inline]
check_cpu_stall kernel/rcu/tree_stall.h:709 [inline]
rcu_pending kernel/rcu/tree.c:3922 [inline]
rcu_sched_clock_irq+0x2001/0x20c0 kernel/rcu/tree.c:2641
update_process_times+0x16d/0x200 kernel/time/timer.c:1782
tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226
tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1421
__run_hrtimer kernel/time/hrtimer.c:1537 [inline]
__hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1601
hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663
local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline]
__sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106
sysvec_apic_timer_interrupt+0x40/0xc0 arch/x86/kernel/apic/apic.c:1100
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:mac80211_hwsim_tx_frame_no_nl.isra.0+0x77f/0x1330 drivers/net/wireless/mac80211_hwsim.c:1527
Code: 84 24 98 00 00 00 00 74 bb e8 bd 97 43 fc 48 8d bb ac 3c 00 00 48 89 f8 48 89 fa 48 c1 e8 03 83 e2 07 0f b6 04 28 38 d0 7f 08 <84> c0 0f 85 36 09 00 00 44 0f b6 bb ac 3c 00 00 31 ff 44 89 fe e8
RSP: 0018:ffffc90000007ba0 EFLAGS: 00000297
RAX: 0000000000000000 RBX: ffff8880326f3260 RCX: 0000000000000100
RDX: 0000000000000004 RSI: ffffffff8531f113 RDI: ffff8880326f6f0c
RBP: dffffc0000000000 R08: 0000000000000006 R09: 0000000000000000
R10: ffffffff8531f149 R11: 0000000000000000 R12: ffff8880a1b4e8c0
R13: ffff888018803490 R14: ffff888018803260 R15: 0000000000000000
mac80211_hwsim_tx_frame+0x1ee/0x2a0 drivers/net/wireless/mac80211_hwsim.c:1784
mac80211_hwsim_beacon_tx+0x49b/0x930 drivers/net/wireless/mac80211_hwsim.c:1838
__iterate_interfaces+0x1e5/0x520 net/mac80211/util.c:793
ieee80211_iterate_active_interfaces_atomic+0x70/0x180 net/mac80211/util.c:829
mac80211_hwsim_beacon+0xd5/0x1a0 drivers/net/wireless/mac80211_hwsim.c:1861
__run_hrtimer kernel/time/hrtimer.c:1537 [inline]
__hrtimer_run_queues+0x609/0xe50 kernel/time/hrtimer.c:1601
hrtimer_run_softirq+0x17b/0x360 kernel/time/hrtimer.c:1618
__do_softirq+0x29b/0x9c2 kernel/softirq.c:558
invoke_softirq kernel/softirq.c:432 [inline]
__irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636
irq_exit_rcu+0x5/0x20 kernel/softirq.c:648
sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:rcu_read_unlock include/linux/rcupdate.h:716 [inline]
RIP: 0010:__unlock_page_memcg mm/memcontrol.c:2057 [inline]
RIP: 0010:unlock_page_memcg+0x144/0x2c0 mm/memcontrol.c:2068
Code: fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 46 01 00 00 65 48 8b 04 25 00 f0 01 00 48 39 83 88 10 00 00 0f 84 a0 00 00 00 b7 0f a0 ff 84 c0 74 50 e8 fe 13 a1 ff 48 c7 c6 7d 46 c1 81 48
RSP: 0018:ffffc90002c6f768 EFLAGS: 00000246
RAX: 00fff00000000000 RBX: 0000000000000000 RCX: ffffffff81c1460b
RDX: 1ffffd4000337c78 RSI: 0000000000000008 RDI: ffffea00019be3c0
RBP: ffffea00019be3c0 R08: 0000000000000000 R09: ffffea00019be3c7
R10: fffff94000337c78 R11: 0000000000000000 R12: ffffea00019be3c0
R13: 0000000000000000 R14: dffffc0000000000 R15: 00000000f6223000
zap_pte_range mm/memory.c:1362 [inline]
zap_pmd_range mm/memory.c:1481 [inline]
zap_pud_range mm/memory.c:1510 [inline]
zap_p4d_range mm/memory.c:1531 [inline]
unmap_page_range+0xed5/0x2a10 mm/memory.c:1552
unmap_single_vma+0x198/0x300 mm/memory.c:1597
unmap_vmas+0x16d/0x2f0 mm/memory.c:1629
exit_mmap+0x1d0/0x620 mm/mmap.c:3201
__mmput+0x122/0x470 kernel/fork.c:1101
mmput+0x58/0x60 kernel/fork.c:1122
exit_mm kernel/exit.c:501 [inline]
do_exit+0xae2/0x2a60 kernel/exit.c:812
do_group_exit+0x125/0x310 kernel/exit.c:922
get_signal+0x47f/0x2160 kernel/signal.c:2808
arch_do_signal_or_restart+0x2a9/0x1c40 arch/x86/kernel/signal.c:865
handle_signal_work kernel/entry/common.c:148 [inline]
exit_to_user_mode_loop kernel/entry/common.c:172 [inline]
exit_to_user_mode_prepare+0x17d/0x290 kernel/entry/common.c:209
__syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302
__do_fast_syscall_32+0x72/0xf0 arch/x86/entry/common.c:181
do_fast_syscall_32+0x2f/0x70 arch/x86/entry/common.c:203
entry_SYSENTER_compat_after_hwframe+0x4d/0x5c
RIP: 0023:0xf7fa3549
Code: Unable to access opcode bytes at RIP 0xf7fa351f.
RSP: 002b:00000000f559d5fc EFLAGS: 00000296 ORIG_RAX: 0000000000000171
RAX: 000000000000fffa RBX: 0000000000000005 RCX: 00000000203cef9f
RDX: 000000000000fffa RSI: 0000000000000000 RDI: 0000000020618000
RBP: 0000000000000010 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
================================
WARNING: inconsistent lock state
5.14.0-rc2-syzkaller #0 Not tainted
--------------------------------
inconsistent {IN-HARDIRQ-W} -> {HARDIRQ-ON-W} usage.
syz-executor.2/23210 [HC0[0]:SC1[1]:HE0:SE0] takes:
ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: print_other_cpu_stall kernel/rcu/tree_stall.h:543 [inline]
ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: check_cpu_stall kernel/rcu/tree_stall.h:709 [inline]
ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: rcu_pending kernel/rcu/tree.c:3922 [inline]
ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: rcu_sched_clock_irq+0xc9a/0x20c0 kernel/rcu/tree.c:2641
{IN-HARDIRQ-W} state was registered at:
lock_acquire kernel/locking/lockdep.c:5625 [inline]
lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0x39/0x50 kernel/locking/spinlock.c:159
rcu_report_exp_cpu_mult+0x1c/0x280 kernel/rcu/tree_exp.h:237
flush_smp_call_function_queue+0x34b/0x640 kernel/smp.c:663
__sysvec_call_function_single+0x95/0x3d0 arch/x86/kernel/smp.c:248
sysvec_call_function_single+0x8e/0xc0 arch/x86/kernel/smp.c:243
asm_sysvec_call_function_single+0x12/0x20 arch/x86/include/asm/idtentry.h:646
__seqprop_spinlock_sequence include/linux/seqlock.h:277 [inline]
read_seqbegin include/linux/seqlock.h:840 [inline]
zone_span_seqbegin include/linux/memory_hotplug.h:77 [inline]
page_outside_zone_boundaries mm/page_alloc.c:580 [inline]
bad_range+0xcf/0x300 mm/page_alloc.c:609
rmqueue mm/page_alloc.c:3747 [inline]
get_page_from_freelist+0xa51/0x2f80 mm/page_alloc.c:4163
__alloc_pages+0x1b2/0x500 mm/page_alloc.c:5388
alloc_pages+0x18c/0x2a0 mm/mempolicy.c:2244
alloc_slab_page mm/slub.c:1688 [inline]
allocate_slab+0x32e/0x4b0 mm/slub.c:1828
new_slab mm/slub.c:1891 [inline]
new_slab_objects mm/slub.c:2637 [inline]
___slab_alloc+0x4ba/0x820 mm/slub.c:2800
__slab_alloc.constprop.0+0xa7/0xf0 mm/slub.c:2840
slab_alloc_node mm/slub.c:2922 [inline]
slab_alloc mm/slub.c:2964 [inline]
kmem_cache_alloc+0x3e1/0x4a0 mm/slub.c:2969
vm_area_alloc+0x1c/0x110 kernel/fork.c:349
__bprm_mm_init fs/exec.c:252 [inline]
bprm_mm_init fs/exec.c:376 [inline]
alloc_bprm+0x33e/0x8f0 fs/exec.c:1521
kernel_execve+0x55/0x460 fs/exec.c:1941
call_usermodehelper_exec_async+0x2e3/0x580 kernel/umh.c:112
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
irq event stamp: 13949185
hardirqs last enabled at (13949184): [] asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
hardirqs last disabled at (13949185): [] sysvec_apic_timer_interrupt+0xb/0xc0 arch/x86/kernel/apic/apic.c:1100
softirqs last enabled at (11571500): [] invoke_softirq kernel/softirq.c:432 [inline]
softirqs last enabled at (11571500): [] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636
softirqs last disabled at (11571503): [] invoke_softirq kernel/softirq.c:432 [inline]
softirqs last disabled at (11571503): [] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0
----
lock(rcu_node_0);
lock(rcu_node_0);
*** DEADLOCK ***
5 locks held by syz-executor.2/23210:
#0: ffff88801cd476d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:354 [inline]
#0: ffff88801cd476d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pte_range mm/memory.c:1320 [inline]
#0: ffff88801cd476d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pmd_range mm/memory.c:1481 [inline]
#0: ffff88801cd476d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pud_range mm/memory.c:1510 [inline]
#0: ffff88801cd476d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_p4d_range mm/memory.c:1531 [inline]
#0: ffff88801cd476d8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: unmap_page_range+0x87b/0x2a10 mm/memory.c:1552
#1: ffffffff8b97b9c0 (rcu_read_lock){....}-{1:2}, at: _compound_head include/linux/page-flags.h:185 [inline]
#1: ffffffff8b97b9c0 (rcu_read_lock){....}-{1:2}, at: lock_page_memcg+0x33/0x7d0 mm/memcontrol.c:2002
#2: ffffffff8b97b9c0 (rcu_read_lock){....}-{1:2}, at: ieee80211_iterate_active_interfaces_atomic+0x0/0x180 net/mac80211/util.c:1237
#3: ffffffff8c77b038 (hwsim_radio_lock){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:354 [inline]
#3: ffffffff8c77b038 (hwsim_radio_lock){+.-.}-{2:2}, at: mac80211_hwsim_tx_frame_no_nl.isra.0+0x68f/0x1330 drivers/net/wireless/mac80211_hwsim.c:1516
#4: ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: print_other_cpu_stall kernel/rcu/tree_stall.h:543 [inline]
#4: ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: check_cpu_stall kernel/rcu/tree_stall.h:709 [inline]
#4: ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: rcu_pending kernel/rcu/tree.c:3922 [inline]
#4: ffffffff8b984818 (rcu_node_0){?.-.}-{2:2}, at: rcu_sched_clock_irq+0xc9a/0x20c0 kernel/rcu/tree.c:2641
stack backtrace:
CPU: 0 PID: 23210 Comm: syz-executor.2 Not tainted 5.14.0-rc2-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105
print_usage_bug kernel/locking/lockdep.c:203 [inline]
valid_state kernel/locking/lockdep.c:3933 [inline]
mark_lock_irq kernel/locking/lockdep.c:4136 [inline]
mark_lock.cold+0x61/0x8e kernel/locking/lockdep.c:4593
mark_held_locks+0x9f/0xe0 kernel/locking/lockdep.c:4194
__trace_hardirqs_on_caller kernel/locking/lockdep.c:4212 [inline]
lockdep_hardirqs_on_prepare kernel/locking/lockdep.c:4280 [inline]
lockdep_hardirqs_on_prepare+0x135/0x400 kernel/locking/lockdep.c:4232
trace_hardirqs_on+0x5b/0x1c0 kernel/trace/trace_preemptirq.c:49
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:mac80211_hwsim_tx_frame_no_nl.isra.0+0x77f/0x1330 drivers/net/wireless/mac80211_hwsim.c:1527
Code: 84 24 98 00 00 00 00 74 bb e8 bd 97 43 fc 48 8d bb ac 3c 00 00 48 89 f8 48 89 fa 48 c1 e8 03 83 e2 07 0f b6 04 28 38 d0 7f 08 <84> c0 0f 85 36 09 00 00 44 0f b6 bb ac 3c 00 00 31 ff 44 89 fe e8
RSP: 0018:ffffc90000007ba0 EFLAGS: 00000297
RAX: 0000000000000000 RBX: ffff8880326f3260 RCX: 0000000000000100
RDX: 0000000000000004 RSI: ffffffff8531f113 RDI: ffff8880326f6f0c
RBP: dffffc0000000000 R08: 0000000000000006 R09: 0000000000000000
R10: ffffffff8531f149 R11: 0000000000000000 R12: ffff8880a1b4e8c0
R13: ffff888018803490 R14: ffff888018803260 R15: 0000000000000000
mac80211_hwsim_tx_frame+0x1ee/0x2a0 drivers/net/wireless/mac80211_hwsim.c:1784
mac80211_hwsim_beacon_tx+0x49b/0x930 drivers/net/wireless/mac80211_hwsim.c:1838
__iterate_interfaces+0x1e5/0x520 net/mac80211/util.c:793
ieee80211_iterate_active_interfaces_atomic+0x70/0x180 net/mac80211/util.c:829
mac80211_hwsim_beacon+0xd5/0x1a0 drivers/net/wireless/mac80211_hwsim.c:1861
__run_hrtimer kernel/time/hrtimer.c:1537 [inline]
__hrtimer_run_queues+0x609/0xe50 kernel/time/hrtimer.c:1601
hrtimer_run_softirq+0x17b/0x360 kernel/time/hrtimer.c:1618
__do_softirq+0x29b/0x9c2 kernel/softirq.c:558
invoke_softirq kernel/softirq.c:432 [inline]
__irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636
irq_exit_rcu+0x5/0x20 kernel/softirq.c:648
sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:rcu_read_unlock include/linux/rcupdate.h:716 [inline]
RIP: 0010:__unlock_page_memcg mm/memcontrol.c:2057 [inline]
RIP: 0010:unlock_page_memcg+0x144/0x2c0 mm/memcontrol.c:2068
Code: fc ff df 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 46 01 00 00 65 48 8b 04 25 00 f0 01 00 48 39 83 88 10 00 00 0f 84 a0 00 00 00 b7 0f a0 ff 84 c0 74 50 e8 fe 13 a1 ff 48 c7 c6 7d 46 c1 81 48
RSP: 0018:ffffc90002c6f768 EFLAGS: 00000246
RAX: 00fff00000000000 RBX: 0000000000000000 RCX: ffffffff81c1460b
RDX: 1ffffd4000337c78 RSI: 0000000000000008 RDI: ffffea00019be3c0
RBP: ffffea00019be3c0 R08: 0000000000000000 R09: ffffea00019be3c7
R10: fffff94000337c78 R11: 0000000000000000 R12: ffffea00019be3c0
R13: 0000000000000000 R14: dffffc0000000000 R15: 00000000f6223000
zap_pte_range mm/memory.c:1362 [inline]
zap_pmd_range mm/memory.c:1481 [inline]
zap_pud_range mm/memory.c:1510 [inline]
zap_p4d_range mm/memory.c:1531 [inline]
unmap_page_range+0xed5/0x2a10 mm/memory.c:1552
unmap_single_vma+0x198/0x300 mm/memory.c:1597
unmap_vmas+0x16d/0x2f0 mm/memory.c:1629
exit_mmap+0x1d0/0x620 mm/mmap.c:3201
__mmput+0x122/0x470 kernel/fork.c:1101
mmput+0x58/0x60 kernel/fork.c:1122
exit_mm kernel/exit.c:501 [inline]
do_exit+0xae2/0x2a60 kernel/exit.c:812
do_group_exit+0x125/0x310 kernel/exit.c:922
get_signal+0x47f/0x2160 kernel/signal.c:2808
arch_do_signal_or_restart+0x2a9/0x1c40 arch/x86/kernel/signal.c:865
handle_signal_work kernel/entry/common.c:148 [inline]
exit_to_user_mode_loop kernel/entry/common.c:172 [inline]
exit_to_user_mode_prepare+0x17d/0x290 kernel/entry/common.c:209
__syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302
__do_fast_syscall_32+0x72/0xf0 arch/x86/entry/common.c:181
do_fast_syscall_32+0x2f/0x70 arch/x86/entry/common.c:203
entry_SYSENTER_compat_after_hwframe+0x4d/0x5c
RIP: 0023:0xf7fa3549
Code: Unable to access opcode bytes at RIP 0xf7fa351f.
RSP: 002b:00000000f559d5fc EFLAGS: 00000296 ORIG_RAX: 0000000000000171
RAX: 000000000000fffa RBX: 0000000000000005 RCX: 00000000203cef9f
RDX: 000000000000fffa RSI: 0000000000000000 RDI: 0000000020618000
RBP: 0000000000000010 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
softirq: huh, entered softirq 8 HRTIMER ffffffff81655580 with preempt_count 00000101, exited with 00000102?