rcu: INFO: rcu_preempt detected stalls on CPUs/tasks: rcu: 1-...!: (0 ticks this GP) idle=577/1/0x4000000000000000 softirq=60141/60141 fqs=0 (detected by 0, t=10502 jiffies, g=82281, q=74) Sending NMI from CPU 0 to CPUs 1: NMI backtrace for cpu 1 CPU: 1 PID: 23271 Comm: syz-executor.5 Not tainted 5.17.0-rc1-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:check_preemption_disabled+0x74/0x1c0 lib/smp_processor_id.c:55 Code: 74 2a 0f 1f 44 00 00 65 48 8b 04 25 28 00 00 00 48 3b 44 24 08 0f 85 52 01 00 00 89 d8 48 83 c4 10 5b 41 5c 41 5d 41 5e 41 5f <5d> c3 48 c7 04 24 00 00 00 00 9c 8f 04 24 4c 8b 24 24 bd 00 02 00 RSP: 0018:ffffc90000dc0c50 EFLAGS: 00000086 RAX: 0000000000000001 RBX: ffff8880738b2fa0 RCX: ffff88801e366158 RDX: 0000000000000001 RSI: 0000000000010002 RDI: 0000000000000000 RBP: 0000000000010002 R08: dffffc0000000000 R09: fffffbfff1ffddc5 R10: fffffbfff1ffddc5 R11: 0000000000000000 R12: 17a9c0a6af53814d R13: ffff888022ef0b60 R14: ffff888022ef0ae8 R15: ffff888022ef0800 FS: 0000000000000000(0000) GS:ffff8880b9b00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ff926365090 CR3: 000000000c88e000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: rcu_dynticks_curr_cpu_in_eqs kernel/rcu/tree.c:330 [inline] rcu_is_watching+0x12/0xa0 kernel/rcu/tree.c:1128 rcu_read_lock include/linux/rcupdate.h:695 [inline] advance_sched+0x6ec/0x930 net/sched/sch_taprio.c:767 __run_hrtimer kernel/time/hrtimer.c:1685 [inline] __hrtimer_run_queues+0x50b/0xa60 kernel/time/hrtimer.c:1749 hrtimer_interrupt+0x3b3/0x1040 kernel/time/hrtimer.c:1811 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1086 [inline] __sysvec_apic_timer_interrupt+0xf9/0x270 arch/x86/kernel/apic/apic.c:1103 sysvec_apic_timer_interrupt+0x8c/0xb0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline] RIP: 0010:_raw_spin_unlock_irqrestore+0xd4/0x130 kernel/locking/spinlock.c:194 Code: 9c 8f 44 24 20 42 80 3c 23 00 74 08 4c 89 f7 e8 22 49 b8 f7 f6 44 24 21 02 75 4e 41 f7 c7 00 02 00 00 74 01 fb bf 01 00 00 00 67 32 42 f7 65 8b 05 e8 96 e9 75 85 c0 74 3f 48 c7 04 24 0e 36 RSP: 0018:ffffc9001164efa0 EFLAGS: 00000206 RAX: f2f5b72ed7259d00 RBX: 1ffff920022c9df8 RCX: ffffffff81676031 RDX: dffffc0000000000 RSI: 0000000000000001 RDI: 0000000000000001 RBP: ffffc9001164f028 R08: dffffc0000000000 R09: fffffbfff1ffddcb R10: fffffbfff1ffddcb R11: 0000000000000000 R12: dffffc0000000000 R13: 1ffff920022c9df4 R14: ffffc9001164efc0 R15: 0000000000000246 __debug_check_no_obj_freed lib/debugobjects.c:1002 [inline] debug_check_no_obj_freed+0x5a2/0x650 lib/debugobjects.c:1023 free_pages_prepare mm/page_alloc.c:1358 [inline] free_pcp_prepare+0x2a5/0xe00 mm/page_alloc.c:1404 free_unref_page_prepare mm/page_alloc.c:3325 [inline] free_unref_page+0x7d/0x580 mm/page_alloc.c:3404 destroy_compound_page include/linux/mm.h:889 [inline] __put_compound_page mm/swap.c:112 [inline] release_pages+0x6e5/0x17d0 mm/swap.c:956 tlb_batch_pages_flush mm/mmu_gather.c:50 [inline] tlb_flush_mmu_free mm/mmu_gather.c:243 [inline] tlb_flush_mmu+0x780/0x910 mm/mmu_gather.c:250 zap_pte_range mm/memory.c:1441 [inline] zap_pmd_range mm/memory.c:1490 [inline] zap_pud_range mm/memory.c:1519 [inline] zap_p4d_range mm/memory.c:1540 [inline] unmap_page_range+0x2194/0x24b0 mm/memory.c:1561 unmap_vmas+0x202/0x390 mm/memory.c:1638 exit_mmap+0x3eb/0x740 mm/mmap.c:3178 __mmput+0x111/0x3a0 kernel/fork.c:1114 exit_mm+0x211/0x2f0 kernel/exit.c:507 do_exit+0x5be/0x2140 kernel/exit.c:793 do_group_exit+0x2af/0x2b0 kernel/exit.c:935 get_signal+0x1831/0x2330 kernel/signal.c:2862 arch_do_signal_or_restart+0x9c/0x730 arch/x86/kernel/signal.c:868 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+0x191/0x220 kernel/entry/common.c:207 __syscall_exit_to_user_mode_work kernel/entry/common.c:289 [inline] syscall_exit_to_user_mode+0x2e/0x70 kernel/entry/common.c:300 do_syscall_64+0x53/0xd0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x7f7850d9e059 Code: Unable to access opcode bytes at RIP 0x7f7850d9e02f. RSP: 002b:00007f784f713218 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca RAX: fffffffffffffe00 RBX: 00007f7850eb0f68 RCX: 00007f7850d9e059 RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f7850eb0f68 RBP: 00007f7850eb0f60 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f7850eb0f6c R13: 00007ffcd7e766df R14: 00007f784f713300 R15: 0000000000022000 rcu: rcu_preempt kthread timer wakeup didn't happen for 10501 jiffies! g82281 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 rcu: Possible timer handling issue on cpu=1 timer-softirq=35286 rcu: rcu_preempt kthread starved for 10502 jiffies! g82281 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:26480 pid: 14 ppid: 2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:4986 [inline] __schedule+0x926/0x1080 kernel/sched/core.c:6295 schedule+0x12b/0x1f0 kernel/sched/core.c:6368 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1881 rcu_gp_fqs_loop+0x1fd/0x770 kernel/rcu/tree.c:1963 rcu_gp_kthread+0xa5/0x350 kernel/rcu/tree.c:2136 kthread+0x2a3/0x2d0 kernel/kthread.c:377 ret_from_fork+0x1f/0x30 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: 23271 Comm: syz-executor.5 Not tainted 5.17.0-rc1-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:__this_cpu_preempt_check+0x14/0x20 lib/smp_processor_id.c:66 Code: c0 e8 48 91 54 f7 e8 95 0c 31 fa eb 96 e8 84 eb ff ff 0f 1f 40 00 53 48 89 fb 0f 1f 44 00 00 48 c7 c7 60 58 d6 8a 48 89 de 5b 27 fe ff ff cc cc cc cc cc cc cc eb 1e 0f 1f 00 48 89 f8 48 89 RSP: 0018:ffffc90000dc0a30 EFLAGS: 00000046 RAX: 0000000000000002 RBX: 0000000000000000 RCX: 0000000000010002 RDX: 0000000000000000 RSI: ffffffff8a6f4a40 RDI: ffffffff8ad65860 RBP: 0000000000000002 R08: dffffc0000000000 R09: fffffbfff1c02b96 R10: fffffbfff1c02b96 R11: 0000000000000000 R12: 0000000000000046 R13: ffff88801e365700 R14: 00000000ffffffff R15: ffffffff8cb1d940 FS: 0000000000000000(0000) GS:ffff8880b9b00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007ff926365090 CR3: 000000000c88e000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: lockdep_recursion_finish kernel/locking/lockdep.c:438 [inline] lock_is_held_type+0x109/0x190 kernel/locking/lockdep.c:5683 lock_is_held include/linux/lockdep.h:283 [inline] rcu_read_lock_sched_held+0x89/0x130 kernel/rcu/update.c:125 trace_lock_release+0x4f/0x150 include/trace/events/lock.h:58 lock_release+0x82/0x810 kernel/locking/lockdep.c:5650 rcu_read_unlock include/linux/rcupdate.h:727 [inline] advance_sched+0x7be/0x930 net/sched/sch_taprio.c:769 __run_hrtimer kernel/time/hrtimer.c:1685 [inline] __hrtimer_run_queues+0x50b/0xa60 kernel/time/hrtimer.c:1749 hrtimer_interrupt+0x3b3/0x1040 kernel/time/hrtimer.c:1811 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1086 [inline] __sysvec_apic_timer_interrupt+0xf9/0x270 arch/x86/kernel/apic/apic.c:1103 sysvec_apic_timer_interrupt+0x8c/0xb0 arch/x86/kernel/apic/apic.c:1097 asm_sysvec_apic_timer_interrupt+0x12/0x20 RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline] RIP: 0010:_raw_spin_unlock_irqrestore+0xd4/0x130 kernel/locking/spinlock.c:194 Code: 9c 8f 44 24 20 42 80 3c 23 00 74 08 4c 89 f7 e8 22 49 b8 f7 f6 44 24 21 02 75 4e 41 f7 c7 00 02 00 00 74 01 fb bf 01 00 00 00 67 32 42 f7 65 8b 05 e8 96 e9 75 85 c0 74 3f 48 c7 04 24 0e 36 RSP: 0018:ffffc9001164efa0 EFLAGS: 00000206 RAX: f2f5b72ed7259d00 RBX: 1ffff920022c9df8 RCX: ffffffff81676031 RDX: dffffc0000000000 RSI: 0000000000000001 RDI: 0000000000000001 RBP: ffffc9001164f028 R08: dffffc0000000000 R09: fffffbfff1ffddcb R10: fffffbfff1ffddcb R11: 0000000000000000 R12: dffffc0000000000 R13: 1ffff920022c9df4 R14: ffffc9001164efc0 R15: 0000000000000246 __debug_check_no_obj_freed lib/debugobjects.c:1002 [inline] debug_check_no_obj_freed+0x5a2/0x650 lib/debugobjects.c:1023 free_pages_prepare mm/page_alloc.c:1358 [inline] free_pcp_prepare+0x2a5/0xe00 mm/page_alloc.c:1404 free_unref_page_prepare mm/page_alloc.c:3325 [inline] free_unref_page+0x7d/0x580 mm/page_alloc.c:3404 destroy_compound_page include/linux/mm.h:889 [inline] __put_compound_page mm/swap.c:112 [inline] release_pages+0x6e5/0x17d0 mm/swap.c:956 tlb_batch_pages_flush mm/mmu_gather.c:50 [inline] tlb_flush_mmu_free mm/mmu_gather.c:243 [inline] tlb_flush_mmu+0x780/0x910 mm/mmu_gather.c:250 zap_pte_range mm/memory.c:1441 [inline] zap_pmd_range mm/memory.c:1490 [inline] zap_pud_range mm/memory.c:1519 [inline] zap_p4d_range mm/memory.c:1540 [inline] unmap_page_range+0x2194/0x24b0 mm/memory.c:1561 unmap_vmas+0x202/0x390 mm/memory.c:1638 exit_mmap+0x3eb/0x740 mm/mmap.c:3178 __mmput+0x111/0x3a0 kernel/fork.c:1114 exit_mm+0x211/0x2f0 kernel/exit.c:507 do_exit+0x5be/0x2140 kernel/exit.c:793 do_group_exit+0x2af/0x2b0 kernel/exit.c:935 get_signal+0x1831/0x2330 kernel/signal.c:2862 arch_do_signal_or_restart+0x9c/0x730 arch/x86/kernel/signal.c:868 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+0x191/0x220 kernel/entry/common.c:207 __syscall_exit_to_user_mode_work kernel/entry/common.c:289 [inline] syscall_exit_to_user_mode+0x2e/0x70 kernel/entry/common.c:300 do_syscall_64+0x53/0xd0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x7f7850d9e059 Code: Unable to access opcode bytes at RIP 0x7f7850d9e02f. RSP: 002b:00007f784f713218 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca RAX: fffffffffffffe00 RBX: 00007f7850eb0f68 RCX: 00007f7850d9e059 RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f7850eb0f68 RBP: 00007f7850eb0f60 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f7850eb0f6c R13: 00007ffcd7e766df R14: 00007f784f713300 R15: 0000000000022000 ---------------- Code disassembly (best guess): 0: 74 2a je 0x2c 2: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 7: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax e: 00 00 10: 48 3b 44 24 08 cmp 0x8(%rsp),%rax 15: 0f 85 52 01 00 00 jne 0x16d 1b: 89 d8 mov %ebx,%eax 1d: 48 83 c4 10 add $0x10,%rsp 21: 5b pop %rbx 22: 41 5c pop %r12 24: 41 5d pop %r13 26: 41 5e pop %r14 28: 41 5f pop %r15 * 2a: 5d pop %rbp <-- trapping instruction 2b: c3 retq 2c: 48 c7 04 24 00 00 00 movq $0x0,(%rsp) 33: 00 34: 9c pushfq 35: 8f 04 24 popq (%rsp) 38: 4c 8b 24 24 mov (%rsp),%r12 3c: bd .byte 0xbd 3d: 00 02 add %al,(%rdx)