INFO: rcu detected stall in ipv6_rcv

Status: fixed on 2019/03/06 07:43
Subsystems: net
[Documentation on labels]
Fix commit: 12750abad517 xfrm: policy: fix infinite loop when merging src-nodes
First crash: 1976d, last: 1939d
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in ipv6_rcv (4) net C done 2 87d 137d 0/26 upstream: reported C repro on 2024/01/03 13:15
linux-4.19 INFO: rcu detected stall in ipv6_rcv 1 1274d 1274d 0/1 auto-closed as invalid on 2021/03/22 19:41
upstream INFO: rcu detected stall in ipv6_rcv (3) net 1 355d 355d 0/26 auto-obsoleted due to no activity on 2023/08/28 06:25
linux-4.19 BUG: soft lockup in ipv6_rcv C error 25 659d 1137d 0/1 upstream: reported C repro on 2021/04/08 17:19
linux-4.14 INFO: rcu detected stall in ipv6_rcv 1 1484d 1484d 0/1 auto-closed as invalid on 2020/08/24 07:16
upstream INFO: rcu detected stall in ipv6_rcv (2) C done 550 755d 1759d 0/26 auto-obsoleted due to no activity on 2023/04/19 23:54

Sample crash report:
rcu: INFO: rcu_preempt self-detected stall on CPU
rcu: 	1-...!: (1 GPs behind) idle=3da/1/0x4000000000000002 softirq=108992/108993 fqs=8 
rcu: 	 (t=10501 jiffies g=156597 q=740)
rcu: rcu_preempt kthread starved for 10486 jiffies! g156597 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
rcu: RCU grace-period kthread stack dump:
rcu_preempt     R  running task    25848    10      2 0x80000000
Call Trace:
 context_switch kernel/sched/core.c:2831 [inline]
 __schedule+0x897/0x1e60 kernel/sched/core.c:3472
 schedule+0xfe/0x350 kernel/sched/core.c:3516
 schedule_timeout+0x14a/0x250 kernel/time/timer.c:1803
 rcu_gp_fqs_loop+0x6ba/0x970 kernel/rcu/tree.c:1948
 rcu_gp_kthread+0x2bb/0xc10 kernel/rcu/tree.c:2105
 kthread+0x357/0x430 kernel/kthread.c:246
 ret_from_fork+0x3a/0x50 arch/x86/entry/entry_64.S:352
NMI backtrace for cpu 1
CPU: 1 PID: 18240 Comm: syz-executor3 Not tainted 5.0.0-rc3+ #37
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+0x1db/0x2d0 lib/dump_stack.c:113
 nmi_cpu_backtrace.cold+0x63/0xa4 lib/nmi_backtrace.c:101
 nmi_trigger_cpumask_backtrace+0x1be/0x236 lib/nmi_backtrace.c:62
 arch_trigger_cpumask_backtrace+0x14/0x20 arch/x86/kernel/apic/hw_nmi.c:38
 trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline]
 rcu_dump_cpu_stacks+0x183/0x1cf kernel/rcu/tree.c:1211
 print_cpu_stall.cold+0x227/0x40c kernel/rcu/tree.c:1348
 check_cpu_stall kernel/rcu/tree.c:1422 [inline]
 rcu_pending kernel/rcu/tree.c:3018 [inline]
 rcu_check_callbacks+0xb32/0x1380 kernel/rcu/tree.c:2521
 update_process_times+0x32/0x80 kernel/time/timer.c:1635
 tick_sched_handle+0xa2/0x190 kernel/time/tick-sched.c:161
 tick_sched_timer+0x47/0x130 kernel/time/tick-sched.c:1271
 __run_hrtimer kernel/time/hrtimer.c:1389 [inline]
 __hrtimer_run_queues+0x3a7/0x1050 kernel/time/hrtimer.c:1451
 hrtimer_interrupt+0x314/0x770 kernel/time/hrtimer.c:1509
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1035 [inline]
 smp_apic_timer_interrupt+0x18d/0x760 arch/x86/kernel/apic/apic.c:1060
 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:807
RIP: 0010:__sanitizer_cov_trace_cmp1+0x12/0x20 kernel/kcov.c:150
Code: 74 10 e8 4a 89 54 10 f0 4a 89 4c d8 20 4c 89 08 c3 0f 1f 80 00 00 00 00 55 40 0f b6 d6 40 0f b6 f7 31 ff 48 89 e5 48 8b 4d 08 <e8> 79 ff ff ff 5d c3 0f 1f 80 00 00 00 00 55 0f b7 d6 0f b7 f7 bf
RSP: 0018:ffff8880ae706f10 EFLAGS: 00000246 ORIG_RAX: ffffffffffffff13
RAX: 0000000000000000 RBX: ffff8880a38a3b40 RCX: ffffffff86c01228
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff8880ae706f10 R08: ffff88806ab7c440 R09: 0000000000000000
R10: ffff88806ab7c440 R11: 0000000000000000 R12: 000000000000000a
R13: ffff8880ae7073c0 R14: 0000000000000000 R15: 0000000000000000
 xfrm_policy_match+0x1c8/0x2d0 net/xfrm/xfrm_policy.c:1890
 __xfrm_policy_eval_candidates net/xfrm/xfrm_policy.c:2022 [inline]
 xfrm_policy_eval_candidates net/xfrm/xfrm_policy.c:2053 [inline]
 xfrm_policy_lookup_bytype+0x95f/0xdb0 net/xfrm/xfrm_policy.c:2113
 xfrm_policy_lookup+0x7e/0x90 net/xfrm/xfrm_policy.c:2145
 __xfrm_policy_check+0x1426/0x2b00 net/xfrm/xfrm_policy.c:3354
 __xfrm_policy_check2 include/net/xfrm.h:1166 [inline]
 xfrm_policy_check include/net/xfrm.h:1175 [inline]
 xfrm6_policy_check include/net/xfrm.h:1185 [inline]
 tcp_v6_rcv+0x3721/0x3870 net/ipv6/tcp_ipv6.c:1534
 ip6_protocol_deliver_rcu+0x3aa/0x1940 net/ipv6/ip6_input.c:394
 ip6_input_finish+0x84/0x170 net/ipv6/ip6_input.c:434
 NF_HOOK include/linux/netfilter.h:289 [inline]
 NF_HOOK include/linux/netfilter.h:283 [inline]
 ip6_input+0xf9/0x600 net/ipv6/ip6_input.c:443
 dst_input include/net/dst.h:450 [inline]
 ip6_rcv_finish+0x177/0x330 net/ipv6/ip6_input.c:76
 NF_HOOK include/linux/netfilter.h:289 [inline]
 NF_HOOK include/linux/netfilter.h:283 [inline]
 ipv6_rcv+0x113/0x650 net/ipv6/ip6_input.c:272
 __netif_receive_skb_one_core+0x160/0x210 net/core/dev.c:4973
 __netif_receive_skb+0x2c/0x1c0 net/core/dev.c:5083
 process_backlog+0x206/0x750 net/core/dev.c:5923
 napi_poll net/core/dev.c:6346 [inline]
 net_rx_action+0x76d/0x1930 net/core/dev.c:6412
 __do_softirq+0x30b/0xb11 kernel/softirq.c:292
 do_softirq_own_stack+0x2a/0x40 arch/x86/entry/entry_64.S:1027
 do_softirq.part.0+0x11a/0x170 kernel/softirq.c:337
 do_softirq kernel/softirq.c:329 [inline]
 __local_bh_enable_ip+0x211/0x270 kernel/softirq.c:189
 local_bh_enable include/linux/bottom_half.h:32 [inline]
 rcu_read_unlock_bh include/linux/rcupdate.h:696 [inline]
 ip6_finish_output2+0xca9/0x28e0 net/ipv6/ip6_output.c:121
 ip6_finish_output+0x577/0xc30 net/ipv6/ip6_output.c:154
 NF_HOOK_COND include/linux/netfilter.h:278 [inline]
 ip6_output+0x23c/0xa00 net/ipv6/ip6_output.c:171
 dst_output include/net/dst.h:444 [inline]
 NF_HOOK include/linux/netfilter.h:289 [inline]
 NF_HOOK include/linux/netfilter.h:283 [inline]
 ip6_xmit+0xee1/0x24a0 net/ipv6/ip6_output.c:275
 inet6_csk_xmit+0x358/0x650 net/ipv6/inet6_connection_sock.c:139
 __tcp_transmit_skb+0x1add/0x3af0 net/ipv4/tcp_output.c:1160
 tcp_transmit_skb net/ipv4/tcp_output.c:1176 [inline]
 tcp_connect+0x33ca/0x4770 net/ipv4/tcp_output.c:3535
 tcp_v6_connect+0x19cf/0x2940 net/ipv6/tcp_ipv6.c:321
 __inet_stream_connect+0x9a3/0x11b0 net/ipv4/af_inet.c:655
 inet_stream_connect+0x58/0xa0 net/ipv4/af_inet.c:719
 __sys_connect+0x357/0x490 net/socket.c:1664
 __do_sys_connect net/socket.c:1675 [inline]
 __se_sys_connect net/socket.c:1672 [inline]
 __x64_sys_connect+0x73/0xb0 net/socket.c:1672
 do_syscall_64+0x1a3/0x800 arch/x86/entry/common.c:290
RIP: 0033:0x458099
Code: 6d b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 3b b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f8e7e8b8c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002a
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000458099
RDX: 000000000000001c RSI: 0000000020000080 RDI: 0000000000000006
RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f8e7e8b96d4
R13: 00000000004be4f7 R14: 00000000004ceb30 R15: 00000000ffffffff

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2019/01/27 13:29 net-old abfd04f738c2 c73f090a .config console log report ci-upstream-net-this-kasan-gce
2019/01/23 19:10 net-next-old 33a0efa4baec 7cf3249c .config console log report ci-upstream-net-kasan-gce
2019/01/23 13:44 net-next-old 33a0efa4baec 7cf3249c .config console log report ci-upstream-net-kasan-gce
2018/12/28 03:19 net-next-old b71acb0e3721 af317504 .config console log report ci-upstream-net-kasan-gce
2018/12/22 22:38 net-next-old ce28bb445388 e3bd7ab8 .config console log report ci-upstream-net-kasan-gce
2018/12/21 19:25 net-next-old fa2323325e8b 588075e6 .config console log report ci-upstream-net-kasan-gce
2018/12/21 10:04 net-next-old 962ad710f7d6 2b497001 .config console log report ci-upstream-net-kasan-gce
* Struck through repros no longer work on HEAD.