Hi Team, when we are trying to establish a BFD session between two containers while processing "adj_bfd_notify '' * VPP went into an infinite loop and hung *in one of the containers, and this issue is reproducible every time with below topology and configuration.
Any help in fixing the issue would be appreciated. *Topology:* Container1 (memif32321/32321) ----------------- (memif32321/32321)Container2 *Configuration:* Container1 ======== set interface ip address memif32321/32321 4.4.4.4/24 ip table add 100 ip route add 4.4.4.0/24 table 100 via 4.4.4.5 memif32321/32321 out-labels 4444 ip route add 4.4.4.5/32 table 100 via 4.4.4.5 memif32321/32321 out-labels 4444 set interface mpls memif32321/32321 enable mpls local-label add 8888 eos via 4.4.4.5 memif32321/32321 ip4-lookup-in-table 100 bfd udp session add interface memif32321/32321 local-addr 4.4.4.4 peer-addr 4.4.4.5 desired-min-tx 400000 required-min-rx 400000 detect-mult 3 Container2 ======== set interface ip address memif32321/32321 4.4.4.5/24 ip table add 100 ip route add 4.4.4.0/24 table 100 via 4.4.4.4 memif32321/32321 out-labels 8888 ip route add 4.4.4.4/32 table 100 via 4.4.4.4 memif32321/32321 out-labels 8888 set interface mpls memif32321/32321 enable mpls local-label add 4444 eos via 4.4.4.4 memif32321/32321 ip4-lookup-in-table 100 bfd udp session add interface memif32321/32321 local-addr 4.4.4.5 peer-addr 4.4.4.4 desired-min-tx 400000 required-min-rx 400000 detect-mult 3 *VPP version: *20.09 *Backtrace in issue state:* (gdb) thread apply all bt Thread 3 (Thread 0x7f7ac6ffe700 (LWP 422)): #0 0x00007f7b67036ffe in vlib_worker_thread_barrier_check () at /home/supervisor/development/libvpp/src/vlib/threads.h:438 #1 0x00007f7b6703152e in vlib_main_or_worker_loop (vm=0x7f7b46cf3240, is_main=0) at /home/supervisor/development/libvpp/src/vlib/main.c:1788 #2 0x00007f7b67030d47 in vlib_worker_loop (vm=0x7f7b46cf3240) at /home/supervisor/development/libvpp/src/vlib/main.c:2008 #3 0x00007f7b6708892a in vlib_worker_thread_fn (arg=0x7f7b41f14540) at /home/supervisor/development/libvpp/src/vlib/threads.c:1862 #4 0x00007f7b668adc44 in clib_calljmp () at /home/supervisor/development/libvpp/src/vppinfra/longjmp.S:123 #5 0x00007f7ac6ffdec0 in ?? () #6 0x00007f7b67080ad3 in vlib_worker_thread_bootstrap_fn (arg=0x7f7b41f14540) at /home/supervisor/development/libvpp/src/vlib/threads.c:585 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 2 (Thread 0x7f7ac77ff700 (LWP 421)): #0 0x00007f7b67036fef in vlib_worker_thread_barrier_check () at /home/supervisor/development/libvpp/src/vlib/threads.h:437 #1 0x00007f7b6703152e in vlib_main_or_worker_loop (vm=0x7f7b45fe8b80, is_main=0) at /home/supervisor/development/libvpp/src/vlib/main.c:1788 #2 0x00007f7b67030d47 in vlib_worker_loop (vm=0x7f7b45fe8b80) at /home/supervisor/development/libvpp/src/vlib/main.c:2008 #3 0x00007f7b6708892a in vlib_worker_thread_fn (arg=0x7f7b41f14440) at /home/supervisor/development/libvpp/src/vlib/threads.c:1862 #4 0x00007f7b668adc44 in clib_calljmp () at /home/supervisor/development/libvpp/src/vppinfra/longjmp.S:123 #5 0x00007f7ac77feec0 in ?? () #6 0x00007f7b67080ad3 in vlib_worker_thread_bootstrap_fn (arg=0x7f7b41f14440) at /home/supervisor/development/libvpp/src/vlib/threads.c:585 Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 1 (Thread 0x7f7b739b7740 (LWP 226)): #0 0x00007f7b681c952b in fib_node_list_remove (list=54, sibling=63) at /home/supervisor/development/libvpp/src/vnet/fib/fib_node_list.c:246 #1 0x00007f7b681c7695 in fib_node_child_remove (parent_type=FIB_NODE_TYPE_ADJ, parent_index=1, sibling_index=63) at /home/supervisor/development/libvpp/src/vnet/fib/fib_node.c:131 #2 0x00007f7b681b2395 in fib_walk_destroy (fwi=2) at /home/supervisor/development/libvpp/src/vnet/fib/fib_walk.c:262 #3 0x00007f7b681b2f13 in fib_walk_sync (parent_type=FIB_NODE_TYPE_ADJ, parent_index=1, ctx=0x7f7b2e08dc90) at /home/supervisor/development/libvpp/src/vnet/fib/fib_walk.c:818 #4 0x00007f7b6821ed4d in adj_nbr_update_rewrite_internal (adj=0x7f7b46e08c80, adj_next_index=IP_LOOKUP_NEXT_REWRITE, this_node=426, next_node=682, rewrite=0x7f7b4a5c4b40 "z\001\277d\004\004zP\245d\004\004\210G") at /home/supervisor/development/libvpp/src/vnet/adj/adj_nbr.c:472 #5 0x00007f7b6821eb99 in adj_nbr_update_rewrite (adj_index=2, flags=ADJ_NBR_REWRITE_FLAG_COMPLETE, rewrite=0x7f7b4a5c4b40 "z\001\277d\004\004zP\245d\004\004\210G") at /home/supervisor/development/libvpp/src/vnet/adj/adj_nbr.c:335 #6 0x00007f7b67c1e02d in ip_neighbor_mk_complete (ai=2, ipn=0x7f7b476dd0d8) at /home/supervisor/development/libvpp/src/vnet/ip-neighbor/ip_neighbor.c:337 ---Type <return> to continue, or q <return> to quit--- #7 0x00007f7b67c11683 in ip_neighbor_mk_complete_walk (ai=2, ctx=0x7f7b476dd0d8) at /home/supervisor/development/libvpp/src/vnet/ip-neighbor/ip_neighbor.c:364 #8 0x00007f7b68220063 in adj_nbr_walk_nh4 (sw_if_index=5, addr=0x7f7b476dcf60, cb=0x7f7b67c11660 <ip_neighbor_mk_complete_walk>, ctx=0x7f7b476dd0d8) at /home/supervisor/development/libvpp/src/vnet/adj/adj_nbr.c:626 #9 0x00007f7b682202f8 in adj_nbr_walk_nh (sw_if_index=5, adj_nh_proto=FIB_PROTOCOL_IP4, nh=0x7f7b476dcf54, cb=0x7f7b67c11660 <ip_neighbor_mk_complete_walk>, ctx=0x7f7b476dd0d8) at /home/supervisor/development/libvpp/src/vnet/adj/adj_nbr.c:677 #10 0x00007f7b67c127f0 in ip_neighbor_update (vnm=0x7f7b688133e8 <vnet_main>, ai=2) at /home/supervisor/development/libvpp/src/vnet/ip-neighbor/ip_neighbor.c:661 #11 0x00007f7b6788ec7d in ethernet_update_adjacency (vnm=0x7f7b688133e8 <vnet_main>, sw_if_index=5, ai=2) at /home/supervisor/development/libvpp/src/vnet/ethernet/interface.c:219 #12 0x00007f7b68244bbf in vnet_update_adjacency_for_sw_interface (vnm=0x7f7b688133e8 <vnet_main>, sw_if_index=5, ai=2) at /home/supervisor/development/libvpp/src/vnet/adj/rewrite.c:187 #13 0x00007f7b6821e667 in adj_nbr_add_or_lock (nh_proto=FIB_PROTOCOL_IP4, link_type=VNET_LINK_MPLS, nh_addr=0x7f7b46d171e0, sw_if_index=5) at /home/supervisor/development/libvpp/src/vnet/adj/adj_nbr.c:270 #14 0x00007f7b681f33fb in fib_path_attached_next_hop_get_adj (path=0x7f7b46d171c8, link=VNET_LINK_MPLS, dpo=0x7f7b2e08e168) at /home/supervisor/development/libvpp/src/vnet/fib/fib_path.c:674 #15 0x00007f7b681f2ed0 in fib_path_contribute_forwarding (path_index=52, fct=FIB_FORW_CHAIN_TYPE_MPLS_NON_EOS, dpo=0x7f7b2e08e168) at /home/supervisor/development/libvpp/src/vnet/fib/fib_path.c:2475 #16 0x00007f7b681fb2b9 in fib_path_ext_stack (path_ext=0x7f7b435e7220, child_fct=FIB_FORW_CHAIN_TYPE_UNICAST_IP4, imp_null_fct=FIB_FORW_CHAIN_TYPE_UNICAST_IP4, nhs=0x7f7b4285f8d0) at /home/supervisor/development/libvpp/src/vnet/fib/fib_path_ext.c:241 #17 0x00007f7b681d11b3 in fib_entry_src_collect_forwarding (pl_index=50, path_index=52, arg=0x7f7b2e08e380) at /home/supervisor/development/libvpp/src/vnet/fib/fib_entry_src.c:476 #18 0x00007f7b681ec18d in fib_path_list_walk (path_list_index=50, func=0x7f7b681d1020 <fib_entry_src_collect_forwarding>, ctx=0x7f7b2e08e380) at /home/supervisor/development/libvpp/src/vnet/fib/fib_path_list.c:1408 #19 0x00007f7b681d0964 in fib_entry_src_mk_lb (fib_entry=0x7f7b46d38bf0, esrc=0x7f7b45a576d0, fct=FIB_FORW_CHAIN_TYPE_UNICAST_IP4, dpo_lb=0x7f7b46d38c18) at /home/supervisor/development/libvpp/src/vnet/fib/fib_entry_src.c:576 #20 0x00007f7b681d15f3 in fib_entry_src_action_install (fib_entry=0x7f7b46d38bf0, source=FIB_SOURCE_CLI) at /home/supervisor/development/libvpp/src/vnet/fib/fib_entry_src.c:706 #21 0x00007f7b681d251f in fib_entry_src_action_reactivate (fib_entry=0x7f7b46d38bf0, source=FIB_SOURCE_CLI) at /home/supervisor/development/libvpp/src/vnet/fib/fib_entry_src.c:1222 #22 0x00007f7b681cf4e2 in fib_entry_back_walk_notify (node=0x7f7b46d38bf0, ctx=0x7f7b2e08e668) at /home/supervisor/development/libvpp/src/vnet/fib/fib_entry.c:316 #23 0x00007f7b681c77e2 in fib_node_back_walk_one (ptr=0x7f7b2e08e688, ctx=0x7f7b2e08e668) at /home/supervisor/development/libvpp/src/vnet/fib/fib_node.c:161 #24 0x00007f7b681b228a in fib_walk_advance (fwi=1) at /home/supervisor/development/libvpp/src/vnet/fib/fib_walk.c:368 ---Type <return> to continue, or q <return> to quit--- #25 0x00007f7b681b2e20 in fib_walk_sync (parent_type=FIB_NODE_TYPE_PATH_LIST, parent_index=50, ctx=0x7f7b2e08e828) at /home/supervisor/development/libvpp/src/vnet/fib/fib_walk.c:792 #26 0x00007f7b681e27b6 in fib_path_list_back_walk (path_list_index=50, ctx=0x7f7b2e08e828) at /home/supervisor/development/libvpp/src/vnet/fib/fib_path_list.c:500 #27 0x00007f7b681fa6d5 in fib_path_back_walk_notify (node=0x7f7b46d171c8, ctx=0x7f7b2e08e828) at /home/supervisor/development/libvpp/src/vnet/fib/fib_path.c:1226 #28 0x00007f7b681c77e2 in fib_node_back_walk_one (ptr=0x7f7b2e08e848, ctx=0x7f7b2e08e828) at /home/supervisor/development/libvpp/src/vnet/fib/fib_node.c:161 #29 0x00007f7b681b228a in fib_walk_advance (fwi=0) at /home/supervisor/development/libvpp/src/vnet/fib/fib_walk.c:368 #30 0x00007f7b681b2e20 in fib_walk_sync (parent_type=FIB_NODE_TYPE_ADJ, parent_index=1, ctx=0x7f7b2e08e8e0) at /home/supervisor/development/libvpp/src/vnet/fib/fib_walk.c:792 #31 0x00007f7b6824c340 in adj_bfd_update_walk (ai=1) at /home/supervisor/development/libvpp/src/vnet/adj/adj_bfd.c:105 #32 0x00007f7b6824b837 in adj_bfd_notify (event=BFD_LISTEN_EVENT_UPDATE, session=0x7f7b46ed6738) at /home/supervisor/development/libvpp/src/vnet/adj/adj_bfd.c:198 #33 0x00007f7b67c5a6ca in bfd_notify_listeners (bm=0x7f7b6881b7f0 <bfd_main>, event=BFD_LISTEN_EVENT_UPDATE, bs=0x7f7b46ed6738) at /home/supervisor/development/libvpp/src/vnet/bfd/bfd_main.c:450 #34 0x00007f7b67c628ea in bfd_rpc_notify_listeners_cb (a=0x130094fa9) at /home/supervisor/development/libvpp/src/vnet/bfd/bfd_main.c:617 #35 0x00007f7b68874754 in vl_api_rpc_call_t_handler (mp=0x130094f90) at /home/supervisor/development/libvpp/src/vlibmemory/vlib_api.c:531 #36 0x00007f7b6888b06f in vl_msg_api_handler_with_vm_node (am=0x7f7b68a9ed18 <api_global_main>, vlib_rp=0x13002b000, the_msg=0x130094f90, vm=0x7f7b672f0c40 <vlib_global_main>, node=0x7f7b427fed80, is_private=0 '\000') at /home/supervisor/development/libvpp/src/vlibapi/api_shared.c:635 #37 0x00007f7b68846c4b in vl_mem_api_handle_rpc (vm=0x7f7b672f0c40 <vlib_global_main>, node=0x7f7b427fed80) at /home/supervisor/development/libvpp/src/vlibmemory/memory_api.c:746 #38 0x00007f7b68868797 in vl_api_clnt_process (vm=0x7f7b672f0c40 <vlib_global_main>, node=0x7f7b427fed80, f=0x0) at /home/supervisor/development/libvpp/src/vlibmemory/vlib_api.c:337 #39 0x00007f7b670368ed in vlib_process_bootstrap (_a=140167380903912) at /home/supervisor/development/libvpp/src/vlib/main.c:1464 #40 0x00007f7b668adc44 in clib_calljmp () at /home/supervisor/development/libvpp/src/vppinfra/longjmp.S:123 #41 0x00007f7b42f2a7e0 in ?? () #42 0x00007f7b6703632f in vlib_process_startup (vm=0x11442f2a850, p=0x73f1147b8e1390, f=0x114) at /home/supervisor/development/libvpp/src/vlib/main.c:1489 #43 0x0000003546e0d9d0 in ?? () #44 0x000000000000001d in ?? () #45 0x0000003a00000001 in ?? () #46 0x000000000000001f in ?? () #47 0x00007f7b672f0c40 in ?? () from /home/supervisor/development/libvpp/build-root/install-vpp_debug-native/vpp/lib/libvlib.so.1.0.1 ---Type <return> to continue, or q <return> to quit--- #48 0x00007f7b42f2a950 in ?? () #49 0x00007f7b688449e1 in memclnt_queue_callback (vm=<error reading variable: Cannot access memory at address 0xfffffffffffffff8>) at /home/supervisor/development/libvpp/src/vlibmemory/memory_api.c:110 Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) Thanks and Regards, Sudhir -- NOTICE TO RECIPIENT This e-mail message and any attachments are confidential and may be privileged. If you received this e-mail in error, any review, use, dissemination, distribution, or copying of this e-mail is strictly prohibited. Please notify us immediately of the error by return e-mail and please delete this message from your system. For more information about Rtbrick, please visit us at www.rtbrick.com <http://www.rtbrick.com>
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#19540): https://lists.fd.io/g/vpp-dev/message/19540 Mute This Topic: https://lists.fd.io/mt/83418156/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-