rcu: INFO: rcu_preempt self-detected stall on CPU rcu: 0-...!: (1 GPs behind) idle=f1f/1/0x4000000000000000 softirq=112881/112882 fqs=2456 (t=10502 jiffies g=177261 q=1924) rcu: rcu_preempt kthread starved for 5579 jiffies! g177261 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:28696 pid: 14 ppid: 2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:4940 [inline] __schedule+0x940/0x26f0 kernel/sched/core.c:6287 schedule+0xd3/0x270 kernel/sched/core.c:6366 schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1881 rcu_gp_fqs_loop+0x186/0x800 kernel/rcu/tree.c:1957 rcu_gp_kthread+0x1de/0x320 kernel/rcu/tree.c:2130 kthread+0x3e5/0x4d0 kernel/kthread.c:319 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 0 to CPUs 1: NMI backtrace for cpu 1 CPU: 1 PID: 12285 Comm: syz-executor.3 Not tainted 5.15.0-rc2-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:__raw_callee_save___pv_queued_spin_unlock+0xc/0x12 Code: 56 57 41 50 41 51 41 52 41 53 e8 af 15 00 00 41 5b 41 5a 41 59 41 58 5f 5e 5a 59 c3 66 90 52 b8 01 00 00 00 31 d2 f0 0f b0 17 <3c> 01 75 02 5a c3 56 0f b6 f0 e8 c5 ff ff ff 5e 5a c3 66 90 48 b8 RSP: 0018:ffffc90000dc0c90 EFLAGS: 00000046 RAX: 0000000000000001 RBX: 0000000000000246 RCX: ffffffff815bd5a0 RDX: 0000000000000000 RSI: 0000000000000004 RDI: ffff88807c388908 RBP: ffff88807c388908 R08: 0000000000000000 R09: ffff88807c38890b R10: ffffed100f871121 R11: 0000000000000000 R12: ffff88807c388910 R13: ffff88807c388918 R14: ffffffff873bb300 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f193fff9000 CR3: 000000003a0be000 CR4: 00000000001506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: pv_queued_spin_unlock arch/x86/include/asm/paravirt.h:590 [inline] queued_spin_unlock arch/x86/include/asm/qspinlock.h:56 [inline] do_raw_spin_unlock+0x171/0x230 kernel/locking/spinlock_debug.c:141 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:159 [inline] _raw_spin_unlock_irqrestore+0x1e/0x70 kernel/locking/spinlock.c:194 spin_unlock_irqrestore include/linux/spinlock.h:418 [inline] skb_dequeue+0x125/0x180 net/core/skbuff.c:3206 mrp_queue_xmit net/802/mrp.c:363 [inline] mrp_join_timer+0x97/0xc0 net/802/mrp.c:608 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:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 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:bytes_is_nonzero mm/kasan/generic.c:85 [inline] RIP: 0010:memory_is_nonzero mm/kasan/generic.c:102 [inline] RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:128 [inline] RIP: 0010:memory_is_poisoned mm/kasan/generic.c:159 [inline] RIP: 0010:check_region_inline mm/kasan/generic.c:180 [inline] RIP: 0010:kasan_check_range+0xde/0x180 mm/kasan/generic.c:189 Code: 74 f2 48 89 c2 b8 01 00 00 00 48 85 d2 75 56 5b 5d 41 5c c3 48 85 d2 74 5e 48 01 ea eb 09 48 83 c0 01 48 39 d0 74 50 80 38 00 <74> f2 eb d4 41 bc 08 00 00 00 48 89 ea 45 29 dc 4d 8d 1c 2c eb 0c RSP: 0018:ffffc90005b2f768 EFLAGS: 00000246 RAX: fffff9400017f690 RBX: fffff9400017f691 RCX: ffffffff81c3073b RDX: fffff9400017f691 RSI: 0000000000000008 RDI: ffffea0000bfb480 RBP: fffff9400017f690 R08: 0000000000000000 R09: ffffea0000bfb487 R10: fffff9400017f690 R11: 0000000000000000 R12: ffffea0000bfb480 R13: 0000000000000000 R14: dffffc0000000000 R15: 00007f0c47fac000 instrument_atomic_read include/linux/instrumented.h:71 [inline] test_bit include/asm-generic/bitops/instrumented-non-atomic.h:134 [inline] PageSlab include/linux/page-flags.h:347 [inline] __page_memcg include/linux/memcontrol.h:400 [inline] page_memcg include/linux/memcontrol.h:453 [inline] unlock_page_memcg+0xdb/0x2c0 mm/memcontrol.c:2036 zap_pte_range mm/memory.c:1362 [inline] zap_pmd_range mm/memory.c:1481 [inline] zap_pud_range mm/memory.c:1510 [inline] zap_p4d_range mm/memory.c:1531 [inline] unmap_page_range+0xed5/0x2a10 mm/memory.c:1552 unmap_single_vma+0x198/0x310 mm/memory.c:1597 unmap_vmas+0x16d/0x2f0 mm/memory.c:1629 exit_mmap+0x1d0/0x630 mm/mmap.c:3171 __mmput+0x122/0x4b0 kernel/fork.c:1115 mmput+0x58/0x60 kernel/fork.c:1136 exit_mm kernel/exit.c:501 [inline] do_exit+0xabc/0x2a30 kernel/exit.c:812 do_group_exit+0x125/0x310 kernel/exit.c:922 get_signal+0x47f/0x2160 kernel/signal.c:2868 arch_do_signal_or_restart+0x2a9/0x1c40 arch/x86/kernel/signal.c:865 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+0x17d/0x290 kernel/entry/common.c:207 __syscall_exit_to_user_mode_work kernel/entry/common.c:289 [inline] syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:300 do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x7f0c4a057709 Code: Unable to access opcode bytes at RIP 0x7f0c4a0576df. RSP: 002b:00007f0c475ce218 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca RAX: fffffffffffffe00 RBX: 00007f0c4a15bf68 RCX: 00007f0c4a057709 RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f0c4a15bf68 RBP: 00007f0c4a15bf60 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f0c4a15bf6c R13: 00007f0c4a68fb2f R14: 00007f0c475ce300 R15: 0000000000022000 NMI backtrace for cpu 0 CPU: 0 PID: 27170 Comm: syz-executor.3 Not tainted 5.15.0-rc2-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:105 nmi_trigger_cpumask_backtrace+0x1ae/0x220 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:3880 [inline] rcu_sched_clock_irq.cold+0x9d/0x746 kernel/rcu/tree.c:2599 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:1421 __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:lock_is_held_type+0xfd/0x140 kernel/locking/lockdep.c:5673 Code: 00 00 b8 ff ff ff ff 65 0f c1 05 9e dc cc 76 83 f8 01 75 29 9c 58 f6 c4 02 75 3d 48 f7 04 24 00 02 00 00 74 01 fb 48 83 c4 08 <44> 89 e8 5b 5d 41 5c 41 5d 41 5e 41 5f c3 45 31 ed eb b9 0f 0b 48 RSP: 0018:ffffc90000007cf0 EFLAGS: 00000296 RAX: 0000000000000046 RBX: 0000000000000002 RCX: 0000000000000001 RDX: 0000000000000000 RSI: 0000000000000102 RDI: 0000000000000000 RBP: ffffffff8b97fda0 R08: 0000000000000000 R09: ffff8880b9c32a0b R10: ffffed1017386541 R11: 0000000000000000 R12: ffff888023b53900 R13: 0000000000000000 R14: 00000000ffffffff R15: ffff888023b54320 lock_is_held include/linux/lockdep.h:283 [inline] rcu_read_lock_sched_held+0x3a/0x70 kernel/rcu/update.c:125 trace_timer_expire_entry include/trace/events/timer.h:90 [inline] call_timer_fn+0x4b8/0x6b0 kernel/time/timer.c:1420 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:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 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:bytes_is_nonzero mm/kasan/generic.c:85 [inline] RIP: 0010:memory_is_nonzero mm/kasan/generic.c:102 [inline] RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:128 [inline] RIP: 0010:memory_is_poisoned mm/kasan/generic.c:159 [inline] RIP: 0010:check_region_inline mm/kasan/generic.c:180 [inline] RIP: 0010:kasan_check_range+0xde/0x180 mm/kasan/generic.c:189 Code: 74 f2 48 89 c2 b8 01 00 00 00 48 85 d2 75 56 5b 5d 41 5c c3 48 85 d2 74 5e 48 01 ea eb 09 48 83 c0 01 48 39 d0 74 50 80 38 00 <74> f2 eb d4 41 bc 08 00 00 00 48 89 ea 45 29 dc 4d 8d 1c 2c eb 0c RSP: 0018:ffffc9001f35f0f0 EFLAGS: 00000246 RAX: ffffed1017386541 RBX: ffffed1017386542 RCX: ffffffff8161c374 RDX: ffffed1017386542 RSI: 0000000000000004 RDI: ffff8880b9c32a08 RBP: ffffed1017386541 R08: 0000000000000000 R09: ffff8880b9c32a0b R10: ffffed1017386541 R11: 0000000000086089 R12: ffffc9001f35f220 R13: 0000000000000000 R14: ffff888023b53900 R15: ffffc9001f35f558 instrument_atomic_read include/linux/instrumented.h:71 [inline] atomic_read include/linux/atomic/atomic-instrumented.h:27 [inline] rcu_dynticks_curr_cpu_in_eqs kernel/rcu/tree.c:330 [inline] rcu_is_watching+0x54/0xc0 kernel/rcu/tree.c:1121 kernel_text_address kernel/extable.c:139 [inline] kernel_text_address+0x56/0xf0 kernel/extable.c:120 __kernel_text_address+0x9/0x30 kernel/extable.c:105 unwind_get_return_address arch/x86/kernel/unwind_orc.c:318 [inline] unwind_get_return_address+0x51/0x90 arch/x86/kernel/unwind_orc.c:313 arch_stack_walk+0x93/0xe0 arch/x86/kernel/stacktrace.c:26 stack_trace_save+0x8c/0xc0 kernel/stacktrace.c:121 kasan_save_stack+0x1b/0x40 mm/kasan/common.c:38 kasan_set_track+0x1c/0x30 mm/kasan/common.c:46 kasan_set_free_info+0x20/0x30 mm/kasan/generic.c:360 ____kasan_slab_free mm/kasan/common.c:366 [inline] ____kasan_slab_free mm/kasan/common.c:328 [inline] __kasan_slab_free+0xff/0x130 mm/kasan/common.c:374 kasan_slab_free include/linux/kasan.h:230 [inline] slab_free_hook mm/slub.c:1700 [inline] slab_free_freelist_hook+0x81/0x190 mm/slub.c:1725 slab_free mm/slub.c:3483 [inline] kmem_cache_free+0x8a/0x5b0 mm/slub.c:3499 kfree_skbmem+0xef/0x1b0 net/core/skbuff.c:699 __kfree_skb net/core/skbuff.c:756 [inline] consume_skb net/core/skbuff.c:911 [inline] consume_skb+0xcf/0x160 net/core/skbuff.c:905 sctp_chunk_destroy net/sctp/sm_make_chunk.c:1503 [inline] sctp_chunk_put+0x1c0/0x2d0 net/sctp/sm_make_chunk.c:1530 sctp_packet_pack net/sctp/output.c:512 [inline] sctp_packet_transmit+0xf10/0x3000 net/sctp/output.c:617 sctp_packet_singleton+0x190/0x360 net/sctp/outqueue.c:777 sctp_outq_flush_ctrl.constprop.0+0x5dc/0xab0 net/sctp/outqueue.c:908 sctp_outq_flush net/sctp/outqueue.c:1202 [inline] sctp_outq_uncork+0x10b/0x200 net/sctp/outqueue.c:758 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1320 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1195 [inline] sctp_do_sm+0x3b08/0x4ed0 net/sctp/sm_sideeffect.c:1166 sctp_assoc_bh_rcv+0x386/0x6c0 net/sctp/associola.c:1054 sctp_inq_push+0x1da/0x270 net/sctp/inqueue.c:80 sctp_backlog_rcv+0x19e/0x5c0 net/sctp/input.c:344 sk_backlog_rcv include/net/sock.h:1024 [inline] __release_sock+0x134/0x3b0 net/core/sock.c:2668 release_sock+0x54/0x1b0 net/core/sock.c:3198 sctp_connect net/sctp/socket.c:4810 [inline] sctp_inet_connect+0x16e/0x200 net/sctp/socket.c:4823 __sys_connect_file+0x155/0x1a0 net/socket.c:1896 __sys_connect+0x161/0x190 net/socket.c:1913 __do_sys_connect net/socket.c:1923 [inline] __se_sys_connect net/socket.c:1920 [inline] __x64_sys_connect+0x6f/0xb0 net/socket.c:1920 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:0x7f0c4a057709 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:00007f0c475ce188 EFLAGS: 00000246 ORIG_RAX: 000000000000002a RAX: ffffffffffffffda RBX: 00007f0c4a15bf60 RCX: 00007f0c4a057709 RDX: 000000000000001c RSI: 0000000020000080 RDI: 0000000000000004 RBP: 00007f0c4a0b1cb4 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007f0c4a68fb2f R14: 00007f0c475ce300 R15: 0000000000022000 ---------------- Code disassembly (best guess): 0: 56 push %rsi 1: 57 push %rdi 2: 41 50 push %r8 4: 41 51 push %r9 6: 41 52 push %r10 8: 41 53 push %r11 a: e8 af 15 00 00 callq 0x15be f: 41 5b pop %r11 11: 41 5a pop %r10 13: 41 59 pop %r9 15: 41 58 pop %r8 17: 5f pop %rdi 18: 5e pop %rsi 19: 5a pop %rdx 1a: 59 pop %rcx 1b: c3 retq 1c: 66 90 xchg %ax,%ax 1e: 52 push %rdx 1f: b8 01 00 00 00 mov $0x1,%eax 24: 31 d2 xor %edx,%edx 26: f0 0f b0 17 lock cmpxchg %dl,(%rdi) * 2a: 3c 01 cmp $0x1,%al <-- trapping instruction 2c: 75 02 jne 0x30 2e: 5a pop %rdx 2f: c3 retq 30: 56 push %rsi 31: 0f b6 f0 movzbl %al,%esi 34: e8 c5 ff ff ff callq 0xfffffffe 39: 5e pop %rsi 3a: 5a pop %rdx 3b: c3 retq 3c: 66 90 xchg %ax,%ax 3e: 48 rex.W 3f: b8 .byte 0xb8