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?