rcu: INFO: rcu_preempt self-detected stall on CPU rcu: 1-...!: (1 GPs behind) idle=9ab/1/0x4000000000000000 softirq=73437/73438 fqs=1 (t=10500 jiffies g=90185 q=14) rcu: rcu_preempt kthread starved for 10494 jiffies! g90185 f0x0 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:28904 pid: 14 ppid: 2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:4972 [inline] __schedule+0xa9a/0x4940 kernel/sched/core.c:6253 schedule+0xd2/0x260 kernel/sched/core.c:6326 schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1881 rcu_gp_fqs_loop+0x186/0x810 kernel/rcu/tree.c:1955 rcu_gp_kthread+0x1de/0x320 kernel/rcu/tree.c:2128 kthread+0x405/0x4f0 kernel/kthread.c:327 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 rcu: Stack dump where RCU GP kthread last ran: Sending NMI from CPU 1 to CPUs 0: NMI backtrace for cpu 0 CPU: 0 PID: 8696 Comm: syz-executor.4 Not tainted 5.16.0-rc6-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:irqtime_account_irq+0x8c/0x2d0 kernel/sched/cputime.c:61 Code: ed a0 b8 55 8b e8 14 5f f3 07 89 c7 e8 6d df ff ff 48 ba 00 00 00 00 00 fc ff df 48 8d 7b 10 48 89 f9 48 c1 e9 03 80 3c 11 00 <0f> 85 ad 01 00 00 49 89 c5 4c 2b 6b 10 48 89 43 10 65 8b 05 cc 7d RSP: 0018:ffffc90000007fa8 EFLAGS: 00000046 RAX: 000000e5881258d7 RBX: ffff8880b9c27850 RCX: 1ffff11017384f0c RDX: dffffc0000000000 RSI: 0000000000000000 RDI: ffff8880b9c27860 RBP: 0000000000000000 R08: ffffffff8f174018 R09: ffffffff8f17400f R10: ffffffff8f174017 R11: 0000000000000001 R12: ffff88803472a200 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 FS: 00007f26325f1700(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000020000700 CR3: 000000007d9f6000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: account_hardirq_exit include/linux/vtime.h:159 [inline] __irq_exit_rcu+0x1a/0x180 kernel/softirq.c:634 irq_exit_rcu+0x5/0x20 kernel/softirq.c:649 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:434 [inline] RIP: 0010:__pv_queued_spin_lock_slowpath+0x3ba/0xb40 kernel/locking/qspinlock.c:508 Code: eb c6 45 01 01 41 bc 00 80 00 00 48 c1 e9 03 83 e3 07 41 be 01 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 8d 2c 01 eb 0c f3 90 <41> 83 ec 01 0f 84 72 04 00 00 41 0f b6 45 00 38 d8 7f 08 84 c0 0f RSP: 0018:ffffc900029075b8 EFLAGS: 00000206 RAX: 0000000000000003 RBX: 0000000000000000 RCX: 1ffffffff1793cd4 RDX: 0000000000000001 RSI: 0000000000000001 RDI: 0000000000000000 RBP: ffffffff8bc9e6a0 R08: 0000000000000001 R09: ffffffff8ff7ba07 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000007dc7 R13: fffffbfff1793cd4 R14: 0000000000000001 R15: ffff8880b9c3a900 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/0x2b0 kernel/locking/spinlock_debug.c:115 spin_lock include/linux/spinlock.h:349 [inline] __purge_vmap_area_lazy+0x25b/0x1c50 mm/vmalloc.c:1690 _vm_unmap_aliases.part.0+0x3f0/0x500 mm/vmalloc.c:2111 _vm_unmap_aliases mm/vmalloc.c:2085 [inline] vm_unmap_aliases+0x45/0x50 mm/vmalloc.c:2134 change_page_attr_set_clr+0x241/0x500 arch/x86/mm/pat/set_memory.c:1743 change_page_attr_clear arch/x86/mm/pat/set_memory.c:1800 [inline] set_memory_ro+0x78/0xa0 arch/x86/mm/pat/set_memory.c:1946 bpf_prog_lock_ro include/linux/filter.h:881 [inline] bpf_prog_select_runtime+0x690/0x900 kernel/bpf/core.c:1943 bpf_prog_load+0xf80/0x21d0 kernel/bpf/syscall.c:2347 __sys_bpf+0x674/0x5950 kernel/bpf/syscall.c:4633 __do_sys_bpf kernel/bpf/syscall.c:4737 [inline] __se_sys_bpf kernel/bpf/syscall.c:4735 [inline] __x64_sys_bpf+0x75/0xb0 kernel/bpf/syscall.c:4735 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:0x7f2633c7be99 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 bc ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f26325f1168 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007f2633d8ef60 RCX: 00007f2633c7be99 RDX: 0000000000000048 RSI: 0000000020000200 RDI: 0000000000000005 RBP: 00007f2633cd5ff1 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffdfd96b29f R14: 00007f26325f1300 R15: 0000000000022000 NMI backtrace for cpu 1 CPU: 1 PID: 8698 Comm: syz-executor.0 Not tainted 5.16.0-rc6-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+0x1b3/0x230 lib/nmi_backtrace.c:62 trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline] rcu_dump_cpu_stacks+0x25e/0x3f0 kernel/rcu/tree_stall.h:343 print_cpu_stall kernel/rcu/tree_stall.h:627 [inline] check_cpu_stall kernel/rcu/tree_stall.h:711 [inline] rcu_pending kernel/rcu/tree.c:3878 [inline] rcu_sched_clock_irq.cold+0x9d/0x746 kernel/rcu/tree.c:2597 update_process_times+0x16d/0x200 kernel/time/timer.c:1785 tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226 tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1428 __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:1086 [inline] __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1103 sysvec_apic_timer_interrupt+0x40/0xc0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:pie_calculate_probability+0x2ac/0x7c0 net/sched/sch_pie.c:348 Code: c6 48 c1 eb 02 49 89 cc e8 71 59 18 fa 4d 39 ef 73 18 e8 f7 55 18 fa 44 89 e6 bf 40 42 0f 00 e8 0a 58 18 fa 41 83 ee 01 75 ae <48> 89 5c 24 20 4c 8b 74 24 30 4c 8b 6c 24 38 48 8b 5c 24 40 e8 cb RSP: 0018:ffffc90000fd8c50 EFLAGS: 00000246 RAX: 0000000000000000 RBX: 00000000002af31d RCX: 0000000000989680 RDX: 0000000000000000 RSI: ffff88801a70c040 RDI: 0000000000000003 RBP: 0000000000044b82 R08: 00000000000f4240 R09: 0000000000000000 R10: ffffffff875e82a6 R11: 0000000000000000 R12: 0000000000989680 R13: 00000001ad7f29ab R14: 0000000000000000 R15: 0000000000000000 fq_pie_timer+0x170/0x2a0 net/sched/sch_fq_pie.c:383 call_timer_fn+0x1a5/0x6b0 kernel/time/timer.c:1421 expire_timers kernel/time/timer.c:1466 [inline] __run_timers.part.0+0x675/0xa20 kernel/time/timer.c:1734 __run_timers kernel/time/timer.c:1715 [inline] run_timer_softirq+0xb3/0x1d0 kernel/time/timer.c:1747 __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:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:__rb_erase_augmented include/linux/rbtree_augmented.h:267 [inline] RIP: 0010:rb_erase_augmented include/linux/rbtree_augmented.h:303 [inline] RIP: 0010:unlink_va mm/vmalloc.c:964 [inline] RIP: 0010:adjust_va_to_fit_type mm/vmalloc.c:1339 [inline] RIP: 0010:__alloc_vmap_area mm/vmalloc.c:1456 [inline] RIP: 0010:alloc_vmap_area+0xdb9/0x1dc0 mm/vmalloc.c:1547 Code: 0b e9 8e 07 00 00 49 89 dd 48 89 c3 e8 30 0a c5 ff 4c 8d 73 10 4c 89 f0 48 c1 e8 03 80 3c 28 00 0f 85 fc 0e 00 00 48 8b 43 10 <48> 85 c0 75 d7 4c 89 6c 24 60 e8 08 0a c5 ff 48 8d 7b 08 48 b8 00 RSP: 0018:ffffc90002917808 EFLAGS: 00000246 RAX: ffff88801ad677f0 RBX: ffff88801ad67490 RCX: ffffc90002cf9000 RDX: 0000000000040000 RSI: ffffffff81b1ce60 RDI: ffff8880219e6440 RBP: dffffc0000000000 R08: ffff888018df6851 R09: 0000000000000003 R10: ffffffff81b1cd8e R11: 000000000008808a R12: ffff8880219e6430 R13: ffff8880219e6430 R14: ffff88801ad674a0 R15: ffffc9000287e000 __get_vm_area_node.constprop.0+0x128/0x380 mm/vmalloc.c:2434 __vmalloc_node_range+0x12f/0xab0 mm/vmalloc.c:3055 __vmalloc_node mm/vmalloc.c:3114 [inline] __vmalloc+0x69/0x80 mm/vmalloc.c:3128 bpf_prog_alloc_no_stats+0x38/0x330 kernel/bpf/core.c:88 bpf_prog_alloc+0x24/0x190 kernel/bpf/core.c:122 bpf_prog_load+0x746/0x21d0 kernel/bpf/syscall.c:2290 __sys_bpf+0x674/0x5950 kernel/bpf/syscall.c:4633 __do_sys_bpf kernel/bpf/syscall.c:4737 [inline] __se_sys_bpf kernel/bpf/syscall.c:4735 [inline] __x64_sys_bpf+0x75/0xb0 kernel/bpf/syscall.c:4735 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:0x7f564be8be99 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 bc ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f564a801168 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007f564bf9ef60 RCX: 00007f564be8be99 RDX: 0000000000000034 RSI: 0000000020b7a000 RDI: 0000000000000005 RBP: 00007f564bee5ff1 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffe26cd7a7f R14: 00007f564a801300 R15: 0000000000022000 ---------------- Code disassembly (best guess): 0: ed in (%dx),%eax 1: a0 b8 55 8b e8 14 5f movabs 0x7f35f14e88b55b8,%al 8: f3 07 a: 89 c7 mov %eax,%edi c: e8 6d df ff ff callq 0xffffdf7e 11: 48 ba 00 00 00 00 00 movabs $0xdffffc0000000000,%rdx 18: fc ff df 1b: 48 8d 7b 10 lea 0x10(%rbx),%rdi 1f: 48 89 f9 mov %rdi,%rcx 22: 48 c1 e9 03 shr $0x3,%rcx 26: 80 3c 11 00 cmpb $0x0,(%rcx,%rdx,1) * 2a: 0f 85 ad 01 00 00 jne 0x1dd <-- trapping instruction 30: 49 89 c5 mov %rax,%r13 33: 4c 2b 6b 10 sub 0x10(%rbx),%r13 37: 48 89 43 10 mov %rax,0x10(%rbx) 3b: 65 gs 3c: 8b .byte 0x8b 3d: 05 .byte 0x5 3e: cc int3 3f: 7d .byte 0x7d