rcu: INFO: rcu_preempt self-detected stall on CPU rcu: 0-...!: (1 GPs behind) idle=79f/1/0x4000000000000000 softirq=7495/7497 fqs=15 (t=10501 jiffies g=6541 q=337 ncpus=2) rcu: rcu_preempt kthread starved for 10408 jiffies! g6541 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->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:R running task stack:28680 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: 4242 Comm: syz-executor.0 Not tainted 5.18.0-rc3-next-20220422-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 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:ffffc90013737c08 EFLAGS: 00000246 RAX: 0000000000000007 RBX: ffff8880b9c3ae40 RCX: 1ffffffff1b73199 RDX: 0000000000000000 RSI: ffffffff81807171 RDI: ffffffff8134dffd RBP: ffff8880b9d3ae54 R08: 0000000000000000 R09: 0000000000000000 R10: ffffffff81807158 R11: 0000000000000000 R12: ffffed10173875ca R13: ffff8880b9c3ae54 R14: dffffc0000000000 R15: ffff8880b9d3ae40 FS: 0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000001b2c928000 CR3: 000000001d9a0000 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_node kernel/locking/qspinlock_paravirt.h:325 [inline] __pv_queued_spin_lock_slowpath+0x6d8/0xb50 kernel/locking/qspinlock.c:476 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] mm_update_next_owner+0x21a/0x7a0 kernel/exit.c:457 exit_mm kernel/exit.c:509 [inline] do_exit+0xa0a/0x2a00 kernel/exit.c:782 do_group_exit+0xd2/0x2f0 kernel/exit.c:925 __do_sys_exit_group kernel/exit.c:936 [inline] __se_sys_exit_group kernel/exit.c:934 [inline] __x64_sys_exit_group+0x3a/0x50 kernel/exit.c:934 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x7f2c45c890e9 Code: Unable to access opcode bytes at RIP 0x7f2c45c890bf. RSP: 002b:00007ffc0debe508 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7 RAX: ffffffffffffffda RBX: 000000000000001e RCX: 00007f2c45c890e9 RDX: 00007f2c45c3bd2b RSI: ffffffffffffffb8 RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000048f5edc8 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 0000000000000000 R14: 0000000000000001 R15: 00007ffc0debe5f0 NMI backtrace for cpu 0 CPU: 0 PID: 4243 Comm: syz-executor.0 Not tainted 5.18.0-rc3-next-20220422-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: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:ffffc900000075f8 EFLAGS: 00000246 RAX: 0000000000000007 RBX: 0000000000000000 RCX: 1ffffffff1b73199 RDX: 0000000000000000 RSI: ffffffff81807171 RDI: ffffffff8134dffd RBP: ffff888077a6c448 R08: 0000000000000000 R09: 0000000000000000 R10: ffffffff81807158 R11: 0000000000000001 R12: 0000000000000000 R13: ffffed100ef4d889 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] kmem_cache_alloc_node+0x122/0x3f0 mm/slub.c:3264 __alloc_skb+0x215/0x340 net/core/skbuff.c:414 alloc_skb include/linux/skbuff.h:1337 [inline] wg_packet_send_keepalive+0x6e/0x300 drivers/net/wireguard/send.c:226 wg_expired_send_keepalive+0x1d/0x340 drivers/net/wireguard/timers.c:83 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:has_zero arch/x86/include/asm/word-at-a-time.h:51 [inline] RIP: 0010:strscpy+0xae/0x2a0 lib/string.c:204 Code: 08 4c 89 e6 4c 29 ee 4c 29 e8 48 83 f8 07 0f 86 a1 00 00 00 4a 8d 3c 2b e8 3f ff ff ff 48 89 c6 48 f7 d0 4a 8d 3c 36 48 21 f8 <4b> 8d 3c 2f 48 21 e8 74 a7 48 8d 48 ff 48 f7 d0 49 89 f8 48 21 c8 RSP: 0018:ffffc9001345f0c0 EFLAGS: 00000286 RAX: feff0f0101000300 RBX: ffff888077a6c330 RCX: ffffffff841f6e0e RDX: ffffed100ef4d868 RSI: 0000302e726f7475 RDI: feff2f2d716e7374 RBP: 8080808080808080 R08: 0000000000000000 R09: ffff888077a6c338 R10: ffffed100ef4d867 R11: 0000000000000001 R12: 0000000000000010 R13: 0000000000000008 R14: fefefefefefefeff R15: ffff88801390a1a8 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 vm_area_alloc_pages mm/vmalloc.c:2931 [inline] __vmalloc_area_node mm/vmalloc.c:2990 [inline] __vmalloc_node_range+0x8a7/0x13c0 mm/vmalloc.c:3161 __vmalloc_node mm/vmalloc.c:3226 [inline] vmalloc+0x67/0x80 mm/vmalloc.c:3259 netlink_alloc_large_skb net/netlink/af_netlink.c:1196 [inline] netlink_sendmsg+0x687/0xe00 net/netlink/af_netlink.c:1896 sock_sendmsg_nosec net/socket.c:705 [inline] sock_sendmsg+0xcf/0x120 net/socket.c:725 sock_no_sendpage+0xf6/0x140 net/core/sock.c:3126 kernel_sendpage.part.0+0x1ff/0x7b0 net/socket.c:3524 kernel_sendpage net/socket.c:3521 [inline] sock_sendpage+0xdf/0x140 net/socket.c:1007 pipe_to_sendpage+0x2ad/0x380 fs/splice.c:364 splice_from_pipe_feed fs/splice.c:418 [inline] __splice_from_pipe+0x43e/0x8a0 fs/splice.c:562 splice_from_pipe fs/splice.c:597 [inline] generic_splice_sendpage+0xd4/0x140 fs/splice.c:746 do_splice_from fs/splice.c:767 [inline] direct_splice_actor+0x110/0x180 fs/splice.c:936 splice_direct_to_actor+0x34b/0x8c0 fs/splice.c:891 do_splice_direct+0x1a7/0x270 fs/splice.c:979 do_sendfile+0xae0/0x1240 fs/read_write.c:1246 __do_sys_sendfile64 fs/read_write.c:1311 [inline] __se_sys_sendfile64 fs/read_write.c:1297 [inline] __x64_sys_sendfile64+0x1cc/0x210 fs/read_write.c:1297 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x7f2c45c890e9 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f2c46e7a168 EFLAGS: 00000246 ORIG_RAX: 0000000000000028 RAX: ffffffffffffffda RBX: 00007f2c45d9bf60 RCX: 00007f2c45c890e9 RDX: 0000000000000000 RSI: 0000000000000004 RDI: 0000000000000003 RBP: 00007f2c45ce308d R08: 0000000000000000 R09: 0000000000000000 R10: 00008000fffffffe R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffc0debe2cf R14: 00007f2c46e7a300 R15: 0000000000022000 ---------------- 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