rcu: INFO: rcu_preempt self-detected stall on CPU rcu: 0-...!: (1 GPs behind) idle=209/1/0x4000000000000000 softirq=5635/5636 fqs=891 (t=10500 jiffies g=4601 q=1269 ncpus=2) rcu: rcu_preempt kthread timer wakeup didn't happen for 8446 jiffies! g4601 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 rcu: Possible timer handling issue on cpu=1 timer-softirq=3341 rcu: rcu_preempt kthread starved for 8447 jiffies! g4601 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:29264 pid: 16 ppid: 2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:5106 [inline] __schedule+0xa9a/0x4cc0 kernel/sched/core.c:6421 schedule+0xd2/0x1f0 kernel/sched/core.c:6493 schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1907 rcu_gp_fqs_loop+0x1c0/0x840 kernel/rcu/tree.c:2078 rcu_gp_kthread+0x1de/0x320 kernel/rcu/tree.c:2267 kthread+0x2e9/0x3a0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298 rcu: Stack dump where RCU GP kthread last ran: Sending NMI from CPU 0 to CPUs 1: NMI backtrace for cpu 1 CPU: 1 PID: 3659 Comm: kworker/1:8 Not tainted 5.18.0-rc3-next-20220422-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events nsim_dev_trap_report_work RIP: 0010:kvm_wait+0x98/0x100 arch/x86/kernel/kvm.c:1058 Code: fa 83 e2 07 38 d0 7f 04 84 c0 75 63 0f b6 07 40 38 c6 74 35 48 83 c4 10 c3 c3 e8 23 91 4b 00 eb 07 0f 00 2d da b1 94 08 fb f4 <48> 83 c4 10 c3 89 74 24 0c 48 89 3c 24 e8 56 8f 4b 00 8b 74 24 0c RSP: 0018:ffffc90000de0488 EFLAGS: 00000246 RAX: 0000000000000007 RBX: 0000000000000000 RCX: 1ffffffff1b73199 RDX: 0000000000000000 RSI: ffffffff81807171 RDI: ffffffff8134dffd RBP: ffff888023118948 R08: 0000000000000000 R09: 0000000000000000 R10: ffffffff81807158 R11: 0000000000000001 R12: 0000000000000000 R13: ffffed1004623129 R14: 0000000000000001 R15: ffff8880b9d3ae40 FS: 0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000c004274000 CR3: 0000000074498000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: pv_wait arch/x86/include/asm/paravirt.h:603 [inline] pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline] __pv_queued_spin_lock_slowpath+0x8c7/0xb50 kernel/locking/qspinlock.c:511 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:591 [inline] queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline] queued_spin_lock include/asm-generic/qspinlock.h:85 [inline] do_raw_spin_lock+0x200/0x2a0 kernel/locking/spinlock_debug.c:115 spin_lock include/linux/spinlock.h:354 [inline] task_lock include/linux/sched/task.h:170 [inline] __get_task_comm+0x23/0x50 fs/exec.c:1219 __set_page_owner_handle mm/page_owner.c:174 [inline] __set_page_owner+0x253/0x380 mm/page_owner.c:192 prep_new_page mm/page_alloc.c:2394 [inline] get_page_from_freelist+0xba2/0x3e00 mm/page_alloc.c:4135 __alloc_pages+0x1b2/0x500 mm/page_alloc.c:5356 alloc_pages+0x1aa/0x310 mm/mempolicy.c:2273 alloc_slab_page mm/slub.c:1797 [inline] allocate_slab+0x26c/0x3c0 mm/slub.c:1942 new_slab mm/slub.c:2002 [inline] ___slab_alloc+0x985/0xd90 mm/slub.c:3002 __slab_alloc.constprop.0+0x4d/0xa0 mm/slub.c:3089 slab_alloc_node mm/slub.c:3180 [inline] kmem_cache_alloc_node+0x122/0x3f0 mm/slub.c:3264 __alloc_skb+0x215/0x340 net/core/skbuff.c:414 skb_copy+0x139/0x3c0 net/core/skbuff.c:1585 mac80211_hwsim_tx_frame_no_nl.isra.0+0xb7c/0x13b0 drivers/net/wireless/mac80211_hwsim.c:1642 mac80211_hwsim_tx_frame+0x1ee/0x2a0 drivers/net/wireless/mac80211_hwsim.c:1884 mac80211_hwsim_beacon_tx+0x49e/0x920 drivers/net/wireless/mac80211_hwsim.c:1938 __iterate_interfaces+0x1e5/0x560 net/mac80211/util.c:793 ieee80211_iterate_active_interfaces_atomic+0x70/0x180 net/mac80211/util.c:829 mac80211_hwsim_beacon+0xcd/0x1c0 drivers/net/wireless/mac80211_hwsim.c:1961 __run_hrtimer kernel/time/hrtimer.c:1685 [inline] __hrtimer_run_queues+0x609/0xe50 kernel/time/hrtimer.c:1749 hrtimer_run_softirq+0x17b/0x360 kernel/time/hrtimer.c:1766 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x123/0x180 kernel/softirq.c:637 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1106 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:649 RIP: 0010:check_region_inline mm/kasan/generic.c:170 [inline] RIP: 0010:kasan_check_range+0x12c/0x180 mm/kasan/generic.c:189 Code: 00 74 ef 49 8d 04 2c 48 85 d2 75 0b 48 89 da 48 29 c2 e9 55 ff ff ff 49 39 d2 75 17 49 0f be 02 41 83 e1 07 49 39 c1 7d 0a 5b 01 00 00 00 5d 41 5c c3 44 89 c2 e8 c3 ef ff ff 5b 83 f0 01 5d RSP: 0018:ffffc90002d9f668 EFLAGS: 00000246 RAX: ffffed1004623107 RBX: ffff888023118830 RCX: ffffffff841f6e0e RDX: ffffed1004623107 RSI: 0000000000000001 RDI: ffff888023118830 RBP: ffffed1004623106 R08: 0000000000000000 R09: ffff888023118830 R10: ffffed1004623106 R11: 0000000000000001 R12: 0000000000000010 R13: 0000000000000000 R14: fefefefefefefeff R15: ffff888012e6e428 read_word_at_a_time+0xe/0x20 include/asm-generic/rwonce.h:85 strscpy+0xa1/0x2a0 lib/string.c:203 strscpy include/linux/fortify-string.h:170 [inline] strscpy_pad+0x20/0x70 lib/string_helpers.c:788 __get_task_comm+0x35/0x50 fs/exec.c:1221 __set_page_owner_handle mm/page_owner.c:174 [inline] __set_page_owner+0x253/0x380 mm/page_owner.c:192 prep_new_page mm/page_alloc.c:2394 [inline] get_page_from_freelist+0xba2/0x3e00 mm/page_alloc.c:4135 __alloc_pages+0x1b2/0x500 mm/page_alloc.c:5356 alloc_pages+0x1aa/0x310 mm/mempolicy.c:2273 alloc_slab_page mm/slub.c:1797 [inline] allocate_slab+0x26c/0x3c0 mm/slub.c:1942 new_slab mm/slub.c:2002 [inline] ___slab_alloc+0x985/0xd90 mm/slub.c:3002 __slab_alloc.constprop.0+0x4d/0xa0 mm/slub.c:3089 slab_alloc_node mm/slub.c:3180 [inline] __kmalloc_node_track_caller+0x2cb/0x360 mm/slub.c:4952 kmalloc_reserve net/core/skbuff.c:354 [inline] __alloc_skb+0xde/0x340 net/core/skbuff.c:426 alloc_skb include/linux/skbuff.h:1337 [inline] nsim_dev_trap_skb_build drivers/net/netdevsim/dev.c:742 [inline] nsim_dev_trap_report drivers/net/netdevsim/dev.c:799 [inline] nsim_dev_trap_report_work+0x291/0xba0 drivers/net/netdevsim/dev.c:840 process_one_work+0x996/0x1610 kernel/workqueue.c:2289 worker_thread+0x665/0x1080 kernel/workqueue.c:2436 kthread+0x2e9/0x3a0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298 NMI backtrace for cpu 0 CPU: 0 PID: 3334 Comm: kworker/0:3 Not tainted 5.18.0-rc3-next-20220422-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Workqueue: events nsim_dev_trap_report_work Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106 nmi_cpu_backtrace.cold+0x47/0x144 lib/nmi_backtrace.c:111 nmi_trigger_cpumask_backtrace+0x1e6/0x230 lib/nmi_backtrace.c:62 trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline] rcu_dump_cpu_stacks+0x262/0x3f0 kernel/rcu/tree_stall.h:369 print_cpu_stall kernel/rcu/tree_stall.h:665 [inline] check_cpu_stall kernel/rcu/tree_stall.h:749 [inline] rcu_pending kernel/rcu/tree.c:4068 [inline] rcu_sched_clock_irq.cold+0x144/0x8fc kernel/rcu/tree.c:2755 update_process_times+0x16d/0x200 kernel/time/timer.c:1811 tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:243 tick_sched_timer+0xee/0x120 kernel/time/tick-sched.c:1473 __run_hrtimer kernel/time/hrtimer.c:1685 [inline] __hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1749 hrtimer_interrupt+0x31c/0x790 kernel/time/hrtimer.c:1811 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1095 [inline] __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1112 sysvec_apic_timer_interrupt+0x40/0xc0 arch/x86/kernel/apic/apic.c:1106 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:649 RIP: 0010:kvm_wait+0x98/0x100 arch/x86/kernel/kvm.c:1058 Code: fa 83 e2 07 38 d0 7f 04 84 c0 75 63 0f b6 07 40 38 c6 74 35 48 83 c4 10 c3 c3 e8 23 91 4b 00 eb 07 0f 00 2d da b1 94 08 fb f4 <48> 83 c4 10 c3 89 74 24 0c 48 89 3c 24 e8 56 8f 4b 00 8b 74 24 0c RSP: 0018:ffffc90000007338 EFLAGS: 00000246 RAX: 0000000000000007 RBX: 0000000000000000 RCX: 1ffffffff1b73199 RDX: 0000000000000000 RSI: ffffffff81807171 RDI: ffffffff8134dffd RBP: ffff8880218726c8 R08: 0000000000000000 R09: 0000000000000000 R10: ffffffff81807158 R11: 0000000000000001 R12: 0000000000000000 R13: ffffed100430e4d9 R14: 0000000000000001 R15: ffff8880b9c3ae40 pv_wait arch/x86/include/asm/paravirt.h:603 [inline] pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:470 [inline] __pv_queued_spin_lock_slowpath+0x8c7/0xb50 kernel/locking/qspinlock.c:511 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:591 [inline] queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline] queued_spin_lock include/asm-generic/qspinlock.h:85 [inline] do_raw_spin_lock+0x200/0x2a0 kernel/locking/spinlock_debug.c:115 spin_lock include/linux/spinlock.h:354 [inline] task_lock include/linux/sched/task.h:170 [inline] __get_task_comm+0x23/0x50 fs/exec.c:1219 __set_page_owner_handle mm/page_owner.c:174 [inline] __set_page_owner+0x253/0x380 mm/page_owner.c:192 prep_new_page mm/page_alloc.c:2394 [inline] get_page_from_freelist+0xba2/0x3e00 mm/page_alloc.c:4135 __alloc_pages+0x1b2/0x500 mm/page_alloc.c:5356 alloc_pages+0x1aa/0x310 mm/mempolicy.c:2273 alloc_slab_page mm/slub.c:1797 [inline] allocate_slab+0x26c/0x3c0 mm/slub.c:1942 new_slab mm/slub.c:2002 [inline] ___slab_alloc+0x985/0xd90 mm/slub.c:3002 __slab_alloc.constprop.0+0x4d/0xa0 mm/slub.c:3089 slab_alloc_node mm/slub.c:3180 [inline] slab_alloc mm/slub.c:3222 [inline] __kmem_cache_alloc_lru mm/slub.c:3229 [inline] kmem_cache_alloc+0x360/0x3b0 mm/slub.c:3239 dst_alloc+0x146/0x1f0 net/core/dst.c:92 ip6_dst_alloc+0x2e/0x90 net/ipv6/route.c:344 icmp6_dst_alloc+0x6d/0x680 net/ipv6/route.c:3261 ndisc_send_skb+0x1135/0x17e0 net/ipv6/ndisc.c:487 ndisc_send_rs+0x12e/0x6f0 net/ipv6/ndisc.c:717 addrconf_rs_timer+0x3f2/0x820 net/ipv6/addrconf.c:3931 call_timer_fn+0x1a5/0x6b0 kernel/time/timer.c:1444 expire_timers kernel/time/timer.c:1489 [inline] __run_timers.part.0+0x679/0xa80 kernel/time/timer.c:1760 __run_timers kernel/time/timer.c:1738 [inline] run_timer_softirq+0xb3/0x1d0 kernel/time/timer.c:1773 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x123/0x180 kernel/softirq.c:637 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1106 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:649 RIP: 0010:do_raw_spin_lock+0x1a0/0x2a0 kernel/locking/spinlock_debug.c:113 Code: 00 00 fc ff df 48 c1 ea 03 65 4c 8b 24 25 00 70 02 00 80 3c 02 00 0f 85 e3 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 65 10 <48> c7 04 03 00 00 00 00 48 8b 44 24 60 65 48 2b 04 25 28 00 00 00 RSP: 0018:ffffc90002ebf668 EFLAGS: 00000246 RAX: dffffc0000000000 RBX: 1ffff920005d7ece RCX: ffffffff815ea180 RDX: 1ffff1100430e4db RSI: 0000000000000004 RDI: ffffc90002ebf690 RBP: ffff8880218726c8 R08: 0000000000000001 R09: 0000000000000003 R10: fffff520005d7ed2 R11: 0000000000000001 R12: ffff888021871d80 R13: ffff8880218726d8 R14: 0000000000000000 R15: 0000000000000007 spin_lock include/linux/spinlock.h:354 [inline] task_lock include/linux/sched/task.h:170 [inline] __get_task_comm+0x23/0x50 fs/exec.c:1219 __set_page_owner_handle mm/page_owner.c:174 [inline] __set_page_owner+0x253/0x380 mm/page_owner.c:192 prep_new_page mm/page_alloc.c:2394 [inline] get_page_from_freelist+0xba2/0x3e00 mm/page_alloc.c:4135 __alloc_pages+0x1b2/0x500 mm/page_alloc.c:5356 alloc_pages+0x1aa/0x310 mm/mempolicy.c:2273 alloc_slab_page mm/slub.c:1797 [inline] allocate_slab+0x26c/0x3c0 mm/slub.c:1942 new_slab mm/slub.c:2002 [inline] ___slab_alloc+0x985/0xd90 mm/slub.c:3002 __slab_alloc.constprop.0+0x4d/0xa0 mm/slub.c:3089 slab_alloc_node mm/slub.c:3180 [inline] __kmalloc_node_track_caller+0x2cb/0x360 mm/slub.c:4952 kmalloc_reserve net/core/skbuff.c:354 [inline] __alloc_skb+0xde/0x340 net/core/skbuff.c:426 alloc_skb include/linux/skbuff.h:1337 [inline] nsim_dev_trap_skb_build drivers/net/netdevsim/dev.c:742 [inline] nsim_dev_trap_report drivers/net/netdevsim/dev.c:799 [inline] nsim_dev_trap_report_work+0x291/0xba0 drivers/net/netdevsim/dev.c:840 process_one_work+0x996/0x1610 kernel/workqueue.c:2289 worker_thread+0x665/0x1080 kernel/workqueue.c:2436 kthread+0x2e9/0x3a0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298 ---------------- Code disassembly (best guess): 0: fa cli 1: 83 e2 07 and $0x7,%edx 4: 38 d0 cmp %dl,%al 6: 7f 04 jg 0xc 8: 84 c0 test %al,%al a: 75 63 jne 0x6f c: 0f b6 07 movzbl (%rdi),%eax f: 40 38 c6 cmp %al,%sil 12: 74 35 je 0x49 14: 48 83 c4 10 add $0x10,%rsp 18: c3 retq 19: c3 retq 1a: e8 23 91 4b 00 callq 0x4b9142 1f: eb 07 jmp 0x28 21: 0f 00 2d da b1 94 08 verw 0x894b1da(%rip) # 0x894b202 28: fb sti 29: f4 hlt * 2a: 48 83 c4 10 add $0x10,%rsp <-- trapping instruction 2e: c3 retq 2f: 89 74 24 0c mov %esi,0xc(%rsp) 33: 48 89 3c 24 mov %rdi,(%rsp) 37: e8 56 8f 4b 00 callq 0x4b8f92 3c: 8b 74 24 0c mov 0xc(%rsp),%esi