Hi All, We recently started using the VPP's mpls tunnel constructs for our L2 cross connect application. In certain test scenarios we are seeing a crash in the delete path of the mpls tunnel. Any pointers to fix the issue would be really helpful.
Version: *20.09* Call Stack: Thread 1 (Thread 0x7f854cdd3400 (LWP 14261)): #0 0x00007f854c41b492 in __GI___waitpid (pid=21116, stat_loc=stat_loc@entry=0x7f84f79abc28, options=options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:30 #1 0x00007f854c386177 in do_system (line=<optimized out>) at ../sysdeps/posix/system.c:149 #2 0x00007f854c96918d in bd_signal_handler_cb () from /usr/local/lib/libbd-infra.so #3 0x00007f853db8953f in rtb_bd_signal_handler () from /usr/local/lib/libvlib.so.1.0.1 #4 0x00007f853db899a2 in unix_signal_handler () from /usr/local/lib/libvlib.so.1.0.1 #5 <signal handler called> #6 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #7 0x00007f854c377921 in __GI_abort () at abort.c:79 #8 0x00007f853f58a9e3 in os_panic () from /usr/local/lib/librtbvpp.so #9 0x00007f853d35aaa9 in ?? () from /usr/local/lib/libvppinfra.so.1.0.1 #10 0x00007f853d35a827 in _clib_error () from /usr/local/lib/libvppinfra.so.1.0.1 #11 0x00007f853ecb2d75 in ?? () from /usr/local/lib/libvnet.so.1.0.1 #12 0x00007f853ecb302d in fib_path_list_get_n_paths () from /usr/local/lib/libvnet.so.1.0.1 #13 0x00007f853e8f0b5c in ?? () from /usr/local/lib/libvnet.so.1.0.1 #14 0x00007f853e8ef942 in ?? () from /usr/local/lib/libvnet.so.1.0.1 #15 0x00007f853e8ed51a in ?? () from /usr/local/lib/libvnet.so.1.0.1 #16 0x00007f853e2e9e1a in ?? () from /usr/local/lib/libvnet.so.1.0.1 #17 0x00007f853e2ea0e8 in vnet_sw_interface_set_flags () from /usr/local/lib/libvnet.so.1.0.1 #18 0x00007f853e2eb6e4 in vnet_delete_sw_interface () from /usr/local/lib/libvnet.so.1.0.1 #19 0x00007f853e2eede9 in vnet_delete_hw_interface () from /usr/local/lib/libvnet.so.1.0.1 #20 0x00007f853e8ee368 in vnet_mpls_tunnel_del () from /usr/local/lib/libvnet.so.1.0.1 #21 0x00007f853f74535a in rtb_vpp_l2_xconnect_route_del_handle () from /usr/local/lib/librtbvpp.so #22 0x00007f853f7453fa in rtb_vpp_l2_xconnect_route_handle () from /usr/local/lib/librtbvpp.so #23 0x00007f853f69551b in rtb_vpp_route_mapping_process () from /usr/local/lib/librtbvpp.so #24 0x00007f853f696a67 in rtb_vpp_route_adjacency_handle () from /usr/local/lib/librtbvpp.so #25 0x00007f853f696d22 in rtb_vpp_route_api_out_process () from /usr/local/lib/librtbvpp.so #26 0x00007f85406b3975 in fib_route_api_out_del () from /usr/local/lib/libfibd.so #27 0x00007f85406b3a83 in fib_route_api_out_tbl_vpp_wlk () from /usr/local/lib/libfibd.so #28 0x00007f85406a550b in fib_job_tmr_cb () from /usr/local/lib/libfibd.so #29 0x00007f854b27e6c2 in bds_qrunner_dispatch () from /usr/local/lib/libbds.so #30 0x00007f854b27f77c in bds_qrunner_dispatch_type () from /usr/local/lib/libbds.so #31 0x00007f854b27f9aa in bds_qrunner_dispatch_prepare () from /usr/local/lib/libbds.so #32 0x00007f854b27faa8 in bds_qrunner_expire () from /usr/local/lib/libbds.so #33 0x00007f854a67f616 in ?? () from /usr/local/lib/libqb.so #34 0x00007f854a67cfa7 in ?? () from /usr/local/lib/libqb.so #35 0x00007f854a67d797 in qb_loop_run_vpp_wrapper () from /usr/local/lib/libqb.so #36 0x00007f854a6890e8 in lib_qb_service_start_event_wrapper_loop () from /usr/local/lib/libqb.so #37 0x00007f854c96b262 in bd_event_loop_run_once () from /usr/local/lib/libbd-infra.so #38 0x00007f85060444f8 in ?? () from /usr/local/lib/vpp_plugins/rtbrick_plugin.so #39 0x00007f853db058dd in ?? () from /usr/local/lib/libvlib.so.1.0.1 #40 0x00007f853d37ec34 in clib_calljmp () from /usr/local/lib/libvppinfra.so.1.0.1 #41 0x00007f85255f7a10 in ?? () #42 0x00007f853db0531f in ?? () from /usr/local/lib/libvlib.so.1.0.1 Code Snippet for Creating Tunnel (rpath has the out-labels and nexthop): vec_add1(rpaths, rpath); tunnel_sw_if_index = vnet_mpls_tunnel_create(1, 0, NULL); vnet_mpls_tunnel_path_add(tunnel_sw_if_index, rpaths); vnet_sw_interface_admin_up(vnm, tunnel_sw_if_index); Code Snippet for Deleting Tunnel. vec_add1(rpaths, rpath); vnet_mpls_tunnel_path_remove(sw_if_index, rpaths); vec_free(rpaths); vnet_mpls_tunnel_del(sw_if_index); Thanks, Rajith -- 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 (#20125): https://lists.fd.io/g/vpp-dev/message/20125 Mute This Topic: https://lists.fd.io/mt/85599060/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-