rcu: INFO: rcu_preempt detected stalls on CPUs/tasks: rcu: 0-...!: (1 GPs behind) idle=c59/1/0x4000000000000002 softirq=9133/9134 fqs=1 (detected by 1, t=10502 jiffies, g=9877, q=22) Sending NMI from CPU 1 to CPUs 0: NMI backtrace for cpu 0 CPU: 0 PID: 5100 Comm: syz.3.394 Not tainted 5.15.164-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024 RIP: 0010:match_held_lock+0x0/0xb0 kernel/locking/lockdep.c:5070 Code: b6 03 00 75 cf 48 c7 c7 a0 28 8b 8a 48 c7 c6 e0 28 8b 8a e8 a2 f1 18 f7 0f 0b eb b6 e8 09 fb ff ff 66 0f 1f 84 00 00 00 00 00 <55> 53 bd 01 00 00 00 48 39 77 10 74 67 48 89 fb 81 7f 20 00 00 10 RSP: 0018:ffffc900031d6988 EFLAGS: 00000087 RAX: 0000000000000005 RBX: 0000000000000002 RCX: 0000000000000003 RDX: ffff88802423bb80 RSI: ffffffff8c91fb20 RDI: ffff88802423c6c0 RBP: ffff88802423c6c0 R08: ffffffff8101317d R09: fffffbfff1f8e019 R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000046 R13: ffff88802423bb80 R14: 00000000ffffffff R15: ffffffff8c91fb20 FS: 00007f9d83e036c0(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000110c38f9ee CR3: 0000000061ed1000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: __lock_is_held kernel/locking/lockdep.c:5366 [inline] lock_is_held_type+0xa4/0x180 kernel/locking/lockdep.c:5666 perf_get_guest_cbs include/linux/perf_event.h:1273 [inline] perf_misc_flags+0x56/0x1b0 arch/x86/events/core.c:2961 perf_prepare_sample+0x13a/0x1ce0 kernel/events/core.c:7559 __perf_event_output kernel/events/core.c:7739 [inline] perf_event_output_forward+0x199/0x310 kernel/events/core.c:7759 __perf_event_overflow+0x35d/0x530 kernel/events/core.c:9454 perf_tp_event+0x363/0xc40 kernel/events/core.c:9986 perf_trace_run_bpf_submit+0xf7/0x1d0 kernel/events/core.c:9960 perf_trace_preemptirq_template+0x31d/0x430 include/trace/events/preemptirq.h:14 trace_irq_enable_rcuidle+0x10e/0x190 include/trace/events/preemptirq.h:40 trace_hardirqs_on+0x57/0x80 kernel/trace/trace_preemptirq.c:44 asm_sysvec_irq_work+0x16/0x20 arch/x86/include/asm/idtentry.h:664 RIP: 0010:rcu_read_unlock_special+0x84/0x520 kernel/rcu/tree_plugin.h:671 Code: f1 f1 f1 00 f2 f2 f2 49 89 04 17 66 41 c7 44 17 09 f3 f3 41 c6 44 17 0b f3 65 44 8b 25 9d a3 96 7e 41 f7 c4 00 00 f0 00 74 45 <48> c7 44 24 20 0e 36 e0 45 4a c7 04 3a 00 00 00 00 66 42 c7 44 3a RSP: 0018:ffffc900031d7140 EFLAGS: 00000206 RAX: 9b5ea59a92cbbd00 RBX: 1ffff9200063ae30 RCX: ffffffff816319d8 RDX: dffffc0000000000 RSI: ffffffff8a8b2a00 RDI: ffffffff8ad8f800 RBP: ffffc900031d7210 R08: dffffc0000000000 R09: fffffbfff1f8e019 R10: 0000000000000000 R11: dffffc0000000001 R12: ffffffff8c923b00 R13: ffff88802423bfd8 R14: ffffc900031d7180 R15: 1ffff9200063ae2c __rcu_read_unlock+0x92/0x100 kernel/rcu/tree_plugin.h:422 __virt_addr_valid+0x3ad/0x460 arch/x86/mm/physaddr.c:65 free_pages+0x11/0x40 mm/page_alloc.c:5509 kasan_depopulate_vmalloc_pte+0x66/0x80 mm/kasan/shadow.c:375 apply_to_pte_range mm/memory.c:2545 [inline] apply_to_pmd_range mm/memory.c:2589 [inline] apply_to_pud_range mm/memory.c:2625 [inline] apply_to_p4d_range mm/memory.c:2661 [inline] __apply_to_page_range+0x9bf/0xcc0 mm/memory.c:2695 kasan_release_vmalloc+0x96/0xb0 mm/kasan/shadow.c:485 __purge_vmap_area_lazy+0x15ae/0x1740 mm/vmalloc.c:1704 _vm_unmap_aliases+0x453/0x4e0 mm/vmalloc.c:2107 change_page_attr_set_clr+0x308/0x1050 arch/x86/mm/pat/set_memory.c:1740 change_page_attr_clear arch/x86/mm/pat/set_memory.c:1797 [inline] set_memory_ro+0xa1/0xe0 arch/x86/mm/pat/set_memory.c:1943 bpf_jit_binary_lock_ro include/linux/filter.h:892 [inline] bpf_int_jit_compile+0xbf57/0xc6e0 arch/x86/net/bpf_jit_comp.c:2372 bpf_prog_select_runtime+0x701/0x9f0 kernel/bpf/core.c:1930 bpf_prog_load+0x131c/0x1b60 kernel/bpf/syscall.c:2357 __sys_bpf+0x343/0x670 kernel/bpf/syscall.c:4651 __do_sys_bpf kernel/bpf/syscall.c:4755 [inline] __se_sys_bpf kernel/bpf/syscall.c:4753 [inline] __x64_sys_bpf+0x78/0x90 kernel/bpf/syscall.c:4753 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 RIP: 0033:0x7f9d85986e79 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f9d83e03038 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007f9d85b22f80 RCX: 00007f9d85986e79 RDX: 0000000000000048 RSI: 0000000020000080 RDI: 0000000000000005 RBP: 00007f9d859f4916 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f9d85b22f80 R15: 00007ffe99ab9288 rcu: rcu_preempt kthread starved for 10500 jiffies! g9877 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:26712 pid: 15 ppid: 2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:5030 [inline] __schedule+0x12c4/0x45b0 kernel/sched/core.c:6376 schedule+0x11b/0x1f0 kernel/sched/core.c:6459 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1914 rcu_gp_fqs_loop+0x2bf/0x1080 kernel/rcu/tree.c:1972 rcu_gp_kthread+0xa4/0x360 kernel/rcu/tree.c:2145 kthread+0x3f6/0x4f0 kernel/kthread.c:334 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287 rcu: Stack dump where RCU GP kthread last ran: NMI backtrace for cpu 1 CPU: 1 PID: 5103 Comm: syz.2.395 Not tainted 5.15.164-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0x1e3/0x2d0 lib/dump_stack.c:106 nmi_cpu_backtrace+0x46a/0x4a0 lib/nmi_backtrace.c:111 nmi_trigger_cpumask_backtrace+0x181/0x2a0 lib/nmi_backtrace.c:62 trigger_single_cpu_backtrace include/linux/nmi.h:166 [inline] rcu_check_gp_kthread_starvation+0x1d2/0x240 kernel/rcu/tree_stall.h:487 print_other_cpu_stall+0x137a/0x14d0 kernel/rcu/tree_stall.h:592 check_cpu_stall kernel/rcu/tree_stall.h:745 [inline] rcu_pending kernel/rcu/tree.c:3932 [inline] rcu_sched_clock_irq+0xa38/0x1150 kernel/rcu/tree.c:2619 update_process_times+0x196/0x200 kernel/time/timer.c:1818 tick_sched_handle kernel/time/tick-sched.c:254 [inline] tick_sched_timer+0x386/0x550 kernel/time/tick-sched.c:1473 __run_hrtimer kernel/time/hrtimer.c:1686 [inline] __hrtimer_run_queues+0x55b/0xcf0 kernel/time/hrtimer.c:1750 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1812 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1085 [inline] __sysvec_apic_timer_interrupt+0x139/0x470 arch/x86/kernel/apic/apic.c:1102 sysvec_apic_timer_interrupt+0x8c/0xb0 arch/x86/kernel/apic/apic.c:1096 asm_sysvec_apic_timer_interrupt+0x16/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+0x5ba/0xc40 kernel/locking/qspinlock.c:508 Code: 00 00 49 89 dc c6 03 00 48 8b 44 24 10 0f b6 04 10 84 c0 0f 85 48 01 00 00 48 8b 44 24 08 c6 00 01 bb 00 80 ff ff eb 06 f3 90 c3 74 5e 41 0f b6 44 15 00 84 c0 75 36 41 80 3f 00 75 ea 4c 89 RSP: 0018:ffffc900032676c0 EFLAGS: 00000206 RAX: 0000000000000000 RBX: 00000000ffffdbd3 RCX: ffffffff816319d8 RDX: dffffc0000000000 RSI: ffffffff8a8b2a00 RDI: ffffffff8ad8f800 RBP: ffffc900032677b8 R08: dffffc0000000000 R09: fffffbfff1f8e019 R10: 0000000000000000 R11: dffffc0000000001 R12: ffff8880b9b3b154 R13: 1ffffffff193be44 R14: 1ffff11017360001 R15: ffffffff8c9df220 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline] queued_spin_lock_slowpath+0x42/0x50 arch/x86/include/asm/qspinlock.h:51 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline] do_raw_spin_lock+0x269/0x370 kernel/locking/spinlock_debug.c:115 spin_lock include/linux/spinlock.h:363 [inline] preload_this_cpu_lock mm/vmalloc.c:1500 [inline] alloc_vmap_area+0x23c/0x19a0 mm/vmalloc.c:1542 __get_vm_area_node+0x16e/0x2f0 mm/vmalloc.c:2423 __vmalloc_node_range+0xe3/0x8c0 mm/vmalloc.c:3019 __vmalloc_node mm/vmalloc.c:3079 [inline] __vmalloc+0x75/0x80 mm/vmalloc.c:3093 bpf_prog_alloc_no_stats+0x33/0x2f0 kernel/bpf/core.c:90 bpf_prog_alloc+0x18/0x1d0 kernel/bpf/core.c:124 bpf_prog_load+0x800/0x1b60 kernel/bpf/syscall.c:2300 __sys_bpf+0x343/0x670 kernel/bpf/syscall.c:4651 __do_sys_bpf kernel/bpf/syscall.c:4755 [inline] __se_sys_bpf kernel/bpf/syscall.c:4753 [inline] __x64_sys_bpf+0x78/0x90 kernel/bpf/syscall.c:4753 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 RIP: 0033:0x7f8fe84ece79 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 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f8fe6969038 EFLAGS: 00000246 ORIG_RAX: 0000000000000141 RAX: ffffffffffffffda RBX: 00007f8fe8688f80 RCX: 00007f8fe84ece79 RDX: 0000000000000090 RSI: 0000000020000880 RDI: 0000000000000005 RBP: 00007f8fe855a916 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f8fe8688f80 R15: 00007ffdeae30b98