rcu: INFO: rcu_preempt detected stalls on CPUs/tasks: (detected by 0, t=10502 jiffies, g=74465, q=226) rcu: All QSes seen, last rcu_preempt kthread activity 10502 (4295011032-4295000530), jiffies_till_next_fqs=1, root ->qsmask 0x0 rcu: rcu_preempt kthread starved for 10502 jiffies! g74465 f0x2 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:28880 pid: 11 ppid: 2 flags:0x00004000 Call Trace: context_switch kernel/sched/core.c:3779 [inline] __schedule+0x893/0x2130 kernel/sched/core.c:4528 schedule+0xcf/0x270 kernel/sched/core.c:4606 schedule_timeout+0x148/0x250 kernel/time/timer.c:1871 rcu_gp_fqs_loop kernel/rcu/tree.c:1925 [inline] rcu_gp_kthread+0xb4c/0x1c90 kernel/rcu/tree.c:2099 kthread+0x3b1/0x4a0 kernel/kthread.c:292 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:296 ================================ WARNING: inconsistent lock state 5.10.0-rc7-syzkaller #0 Not tainted -------------------------------- inconsistent {IN-HARDIRQ-W} -> {HARDIRQ-ON-W} usage. syz-executor.0/22928 [HC0[0]:SC1[1]:HE0:SE0] takes: ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: print_other_cpu_stall kernel/rcu/tree_stall.h:487 [inline] ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: check_cpu_stall kernel/rcu/tree_stall.h:646 [inline] ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: rcu_pending kernel/rcu/tree.c:3694 [inline] ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: rcu_sched_clock_irq.cold+0xbc/0xee8 kernel/rcu/tree.c:2567 {IN-HARDIRQ-W} state was registered at: lock_acquire kernel/locking/lockdep.c:5437 [inline] lock_acquire+0x29d/0x740 kernel/locking/lockdep.c:5402 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x39/0x50 kernel/locking/spinlock.c:159 rcu_report_exp_cpu_mult+0x72/0x320 kernel/rcu/tree_exp.h:237 flush_smp_call_function_queue+0x34b/0x640 kernel/smp.c:425 __sysvec_call_function_single+0x95/0x3d0 arch/x86/kernel/smp.c:248 asm_call_irq_on_stack+0xf/0x20 __run_sysvec_on_irqstack arch/x86/include/asm/irq_stack.h:37 [inline] run_sysvec_on_irqstack_cond arch/x86/include/asm/irq_stack.h:89 [inline] sysvec_call_function_single+0xbd/0x100 arch/x86/kernel/smp.c:243 asm_sysvec_call_function_single+0x12/0x20 arch/x86/include/asm/idtentry.h:639 __get_user_pages_remote+0x2/0x7a0 mm/gup.c:1790 get_user_pages_remote+0x63/0x90 mm/gup.c:1883 get_arg_page+0xba/0x200 fs/exec.c:222 copy_string_kernel+0x1b4/0x520 fs/exec.c:633 kernel_execve+0x25c/0x460 fs/exec.c:1956 call_usermodehelper_exec_async+0x2de/0x580 kernel/umh.c:110 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:296 irq event stamp: 39300861 hardirqs last enabled at (39300860): [] asm_sysvec_irq_work+0x12/0x20 arch/x86/include/asm/idtentry.h:657 hardirqs last disabled at (39300861): [] sysvec_apic_timer_interrupt+0xc/0x100 arch/x86/kernel/apic/apic.c:1091 softirqs last enabled at (35434900): [] asm_call_irq_on_stack+0xf/0x20 softirqs last disabled at (35434903): [] asm_call_irq_on_stack+0xf/0x20 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(rcu_node_0); lock(rcu_node_0); *** DEADLOCK *** 4 locks held by syz-executor.0/22928: #0: ffff888057a752b8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:354 [inline] #0: ffff888057a752b8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pte_range mm/memory.c:1211 [inline] #0: ffff888057a752b8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pmd_range mm/memory.c:1357 [inline] #0: ffff888057a752b8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_pud_range mm/memory.c:1386 [inline] #0: ffff888057a752b8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: zap_p4d_range mm/memory.c:1407 [inline] #0: ffff888057a752b8 (ptlock_ptr(page)#2){+.+.}-{2:2}, at: unmap_page_range+0x7fe/0x2640 mm/memory.c:1428 #1: ffffffff8b3378e0 (rcu_read_lock){....}-{1:2}, at: INIT_LIST_HEAD include/linux/list.h:36 [inline] #1: ffffffff8b3378e0 (rcu_read_lock){....}-{1:2}, at: list_splice_init include/linux/list.h:483 [inline] #1: ffffffff8b3378e0 (rcu_read_lock){....}-{1:2}, at: netif_receive_skb_list_internal+0x31d/0xd70 net/core/dev.c:5547 #2: ffffffff8b3378e0 (rcu_read_lock){....}-{1:2}, at: NF_HOOK_LIST.constprop.0+0xc7/0x330 include/linux/netfilter.h:340 #3: ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: print_other_cpu_stall kernel/rcu/tree_stall.h:487 [inline] #3: ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: check_cpu_stall kernel/rcu/tree_stall.h:646 [inline] #3: ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: rcu_pending kernel/rcu/tree.c:3694 [inline] #3: ffffffff8b33f998 (rcu_node_0){?.-.}-{2:2}, at: rcu_sched_clock_irq.cold+0xbc/0xee8 kernel/rcu/tree.c:2567 stack backtrace: CPU: 0 PID: 22928 Comm: syz-executor.0 Not tainted 5.10.0-rc7-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x107/0x163 lib/dump_stack.c:118 print_usage_bug kernel/locking/lockdep.c:3740 [inline] valid_state kernel/locking/lockdep.c:3751 [inline] mark_lock_irq kernel/locking/lockdep.c:3954 [inline] mark_lock.cold+0x31/0x73 kernel/locking/lockdep.c:4411 mark_held_locks+0x9f/0xe0 kernel/locking/lockdep.c:4012 __trace_hardirqs_on_caller kernel/locking/lockdep.c:4030 [inline] lockdep_hardirqs_on_prepare kernel/locking/lockdep.c:4098 [inline] lockdep_hardirqs_on_prepare+0x135/0x400 kernel/locking/lockdep.c:4050 trace_hardirqs_on+0x5b/0x1c0 kernel/trace/trace_preemptirq.c:49 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:631 RIP: 0010:__rcu_read_unlock+0x86/0x470 kernel/rcu/tree_plugin.h:402 Code: 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 84 01 00 00 8b 85 84 03 00 00 85 c0 75 4a 65 48 8b 2c 25 00 f0 01 00 <48> 8d bd 80 03 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 RSP: 0018:ffffc900000079f0 EFLAGS: 00000202 RAX: 0000000000000000 RBX: 1ffff92000000f44 RCX: ffffffff87a1d431 RDX: 1ffff110022973b8 RSI: ffffffff87a1d392 RDI: ffff8880114b9dc0 RBP: ffff8880114b9a40 R08: 0000000000000001 R09: ffffc90000007a50 R10: 0000000000000000 R11: 0000000000000001 R12: ffffc90000007b48 R13: ffff88802119c000 R14: ffff8881448eb100 R15: 0000000000000001 rcu_read_unlock include/linux/rcupdate.h:694 [inline] NF_HOOK_LIST.constprop.0+0x207/0x330 include/linux/netfilter.h:339 ip6_sublist_rcv net/ipv6/ip6_input.c:315 [inline] ipv6_list_rcv+0x345/0x490 net/ipv6/ip6_input.c:352 __netif_receive_skb_list_ptype net/core/dev.c:5354 [inline] __netif_receive_skb_list_core+0x549/0x8e0 net/core/dev.c:5402 __netif_receive_skb_list net/core/dev.c:5454 [inline] netif_receive_skb_list_internal+0x777/0xd70 net/core/dev.c:5564 netif_receive_skb_list+0x54/0x5b0 net/core/dev.c:5616 ieee80211_rx_napi+0x344/0x3d0 net/mac80211/rx.c:4784 ieee80211_rx include/net/mac80211.h:4502 [inline] ieee80211_tasklet_handler+0xd3/0x130 net/mac80211/main.c:235 tasklet_action_common.constprop.0+0x22f/0x2d0 kernel/softirq.c:560 __do_softirq+0x2a0/0x9f6 kernel/softirq.c:298 asm_call_irq_on_stack+0xf/0x20 __run_on_irqstack arch/x86/include/asm/irq_stack.h:26 [inline] run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:77 [inline] do_softirq_own_stack+0xaa/0xd0 arch/x86/kernel/irq_64.c:77 invoke_softirq kernel/softirq.c:393 [inline] __irq_exit_rcu kernel/softirq.c:423 [inline] irq_exit_rcu+0x132/0x200 kernel/softirq.c:435 sysvec_apic_timer_interrupt+0x4d/0x100 arch/x86/kernel/apic/apic.c:1091 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:631 RIP: 0010:lockdep_enabled kernel/locking/lockdep.c:84 [inline] RIP: 0010:lock_release+0xd4/0x710 kernel/locking/lockdep.c:5450 Code: 82 4e 04 00 00 48 c7 c3 1c e0 ec 8c 48 b8 00 00 00 00 00 fc ff df 48 89 da 48 c1 ea 03 0f b6 14 02 48 89 d8 83 e0 07 83 c0 03 <38> d0 7c 08 84 d2 0f 85 47 05 00 00 44 8b 15 55 ba 96 0b 45 85 d2 RSP: 0018:ffffc90001c9f6c0 EFLAGS: 00000202 RAX: 0000000000000007 RBX: ffffffff8cece01c RCX: 1ffffffff19d9c03 RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000 RBP: 1ffff92000393eda R08: 0000000000000000 R09: ffffffff8cecae4f R10: fffffbfff19d95c9 R11: 0000000000000000 R12: ffff888057a752b8 R13: 0000000000000000 R14: dffffc0000000000 R15: 000000000101b000 __raw_spin_unlock include/linux/spinlock_api_smp.h:150 [inline] _raw_spin_unlock+0x12/0x40 kernel/locking/spinlock.c:183 spin_unlock include/linux/spinlock.h:394 [inline] zap_pte_range mm/memory.c:1309 [inline] zap_pmd_range mm/memory.c:1357 [inline] zap_pud_range mm/memory.c:1386 [inline] zap_p4d_range mm/memory.c:1407 [inline] unmap_page_range+0xf98/0x2640 mm/memory.c:1428 unmap_single_vma+0x198/0x300 mm/memory.c:1473 unmap_vmas+0x168/0x2e0 mm/memory.c:1505 exit_mmap+0x2b1/0x530 mm/mmap.c:3220 __mmput+0x122/0x470 kernel/fork.c:1079 mmput+0x53/0x60 kernel/fork.c:1100 exit_mm kernel/exit.c:486 [inline] do_exit+0xa72/0x29b0 kernel/exit.c:796 do_group_exit+0x125/0x310 kernel/exit.c:906 get_signal+0x42a/0x1f10 kernel/signal.c:2758 arch_do_signal+0x82/0x2390 arch/x86/kernel/signal.c:811 exit_to_user_mode_loop kernel/entry/common.c:161 [inline] exit_to_user_mode_prepare+0x100/0x1a0 kernel/entry/common.c:191 syscall_exit_to_user_mode+0x38/0x260 kernel/entry/common.c:266 entry_SYSCALL_64_after_hwframe+0x44/0xa9 RIP: 0033:0x45e0f9 Code: Unable to access opcode bytes at RIP 0x45e0cf. RSP: 002b:00007f632f8c0c68 EFLAGS: 00000246 ORIG_RAX: 0000000000000009 RAX: 0000000020ffc000 RBX: 0000000000000006 RCX: 000000000045e0f9 RDX: 0000000000000000 RSI: 0000000000003000 RDI: 0000000020ffc000 RBP: 000000000119bfd8 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000000000011 R11: 0000000000000246 R12: 000000000119bf8c R13: 00007fff5f696b9f R14: 00007f632f8c19c0 R15: 000000000119bf8c softirq: huh, entered softirq 6 TASKLET 00000000818f698d with preempt_count 00000101, exited with 00000102?