Hi Elias, It is probably a bug but I could not reproduce it. Note that commit 30cca512c (build: remove valgrind leftovers, 2019-11-25) is present in stable/2001 so probably not the culprit... Can you share how you built VPP and your complete startup.conf? You seems to be running those commands from startup.conf directly.
Best ben > -----Original Message----- > From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Elias Rudberg > Sent: mercredi 3 juin 2020 15:48 > To: vpp-dev@lists.fd.io > Subject: [vpp-dev] Assertion failure triggered by "ip mroute add" command > (master branch) > > Hello VPP experts, > > There seems to be a problem with "ip mroute add" causing assertion > failure. This happens for the current master branch and the stable/2005 > branch, but not for stable/1908 and stable/2001. > > Doing the following is enough to see the problem: > > create int rdma host-if enp101s0f1 name Interface101 > set int ip address Interface101 10.0.0.1/24 > ip mroute add 224.0.0.1 via Interface101 Accept > > The "ip mroute add" command there then causes an assertion failure. > Backtrace: > > Thread 1 "vpp_main" received signal SIGABRT, Aborted. > __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 > 51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. > (gdb) bt > #0 __GI_raise (sig=sig@entry=6) at > ../sysdeps/unix/sysv/linux/raise.c:51 > #1 0x00007ffff4629801 in __GI_abort () at abort.c:79 > #2 0x00000000004071a3 in os_panic () at vpp/src/vpp/vnet/main.c:371 > #3 0x00007ffff55085b9 in debugger () at vpp/src/vppinfra/error.c:84 > #4 0x00007ffff5508337 in _clib_error (how_to_die=2, function_name=0x0, > line_number=0, fmt=0x7ffff76b04b0 "%s:%d (%s) assertion `%s' fails") > at vpp/src/vppinfra/error.c:143 > #5 0x00007ffff74d1ed8 in dpo_proto_to_fib (dpo_proto=255) at > vpp/src/vnet/fib/fib_types.c:353 > #6 0x00007ffff7504111 in fib_path_attached_get_adj > (path=0x7fffb602cda0, link=255, dpo=0x7fffa6f3c2e8) at > vpp/src/vnet/fib/fib_path.c:721 > #7 0x00007ffff75038fa in fib_path_resolve (path_index=15) at > vpp/src/vnet/fib/fib_path.c:1949 > #8 0x00007ffff74f6a18 in fib_path_list_paths_add (path_list_index=13, > rpaths=0x7fffb6523b40) at vpp/src/vnet/fib/fib_path_list.c:902 > #9 0x00007ffff75c795a in mfib_entry_src_paths_add > (msrc=0x7fffb6527c10, rpaths=0x7fffb6523b40) at > vpp/src/vnet/mfib/mfib_entry.c:754 > #10 0x00007ffff75c764e in mfib_entry_path_update (mfib_entry_index=1, > source=MFIB_SOURCE_CLI, rpaths=0x7fffb6523b40) at > vpp/src/vnet/mfib/mfib_entry.c:1009 > #11 0x00007ffff75ce98a in mfib_table_entry_paths_update_i (fib_index=0, > prefix=0x7fffa6f3c720, source=MFIB_SOURCE_CLI, rpaths=0x7fffb6523b40) > at vpp/src/vnet/mfib/mfib_table.c:318 > #12 0x00007ffff75ce643 in mfib_table_entry_path_update (fib_index=0, > prefix=0x7fffa6f3c720, source=MFIB_SOURCE_CLI, rpath=0x7fffb5ffa330) > at vpp/src/vnet/mfib/mfib_table.c:335 > #13 0x00007ffff6f18ce2 in vnet_ip_mroute_cmd (vm=0x7ffff63969c0 > <vlib_global_main>, main_input=0x7fffa6f3cf18, cmd=0x7fffb5efced0) at > vpp/src/vnet/ip/lookup.c:819 > #14 0x00007ffff6093139 in vlib_cli_dispatch_sub_commands > (vm=0x7ffff63969c0 <vlib_global_main>, cm=0x7ffff6396bf0 > <vlib_global_main+560>, input=0x7fffa6f3cf18, parent_command_index=463) > at vpp/src/vlib/cli.c:568 > #15 0x00007ffff6092fdd in vlib_cli_dispatch_sub_commands > (vm=0x7ffff63969c0 <vlib_global_main>, cm=0x7ffff6396bf0 > <vlib_global_main+560>, input=0x7fffa6f3cf18, parent_command_index=0) > at vpp/src/vlib/cli.c:528 > #16 0x00007ffff609218f in vlib_cli_input (vm=0x7ffff63969c0 > <vlib_global_main>, input=0x7fffa6f3cf18, function=0x0, function_arg=0) > at vpp/src/vlib/cli.c:667 > #17 0x00007ffff616180b in startup_config_process (vm=0x7ffff63969c0 > <vlib_global_main>, rt=0x7fffb4a9c480, f=0x0) at > vpp/src/vlib/unix/main.c:366 > #18 0x00007ffff60dd704 in vlib_process_bootstrap (_a=140736226945080) > at vpp/src/vlib/main.c:1502 > #19 0x00007ffff552c744 in clib_calljmp () at > vpp/src/vppinfra/longjmp.S:123 > #20 0x00007fffb4d06830 in ?? () > #21 0x00007ffff60dd2a2 in vlib_process_startup (vm=0x28800000000, > p=0xcd5b1d5112dc20, f=0xb4d069a0) at vpp/src/vlib/main.c:1524 > #22 0x00000030b6523520 in ?? () > #23 0x000000000000002f in ?? () > #24 0x00000035b4d429c0 in ?? () > #25 0x0000000000000034 in ?? () > #26 0x00007ffff7b775b4 in vlibapi_get_main () at > vpp/src/vlibapi/api_common.h:385 > Backtrace stopped: previous frame inner to this frame (corrupt stack?) > (gdb) > > The code at the assertion at fib_types.c:353 looks like this: > > fib_protocol_t > dpo_proto_to_fib (dpo_proto_t dpo_proto) > { > switch (dpo_proto) > { > case DPO_PROTO_IP6: > return (FIB_PROTOCOL_IP6); > case DPO_PROTO_IP4: > return (FIB_PROTOCOL_IP4); > case DPO_PROTO_MPLS: > return (FIB_PROTOCOL_MPLS); > default: > break; > } > ASSERT(0); <--- this assertion is triggered > return (0); > } > > so apparently dpo_proto does not have any of the allowed values. > > Testing earlier commits in the git history pointed to the following > seemingly unrelated and harmless refactoring commit as the point when > this problem started: > 30cca512c (build: remove valgrind leftovers, 2019-11-25) > > What we are trying to do, which has worked for VPP 19.08, is to enable > receiving of multicast packets on a given interface using two commands > like this: > > ip mroute add 224.0.0.1 via Interface101 Accept > ip mroute add 224.0.0.1 via local Forward > > but now for the master branch the first of those "ip mroute add" lines > gives the assertion failure. > > Has something changed regarding how the "ip mroute add" command is to > be used? > If not, could the assertion failure indicate a bug somewhere? > > The problem seems easy to reproduce, at least for me the assertion > happens in the same way every time. > > Best regards, > Elias
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#16640): https://lists.fd.io/g/vpp-dev/message/16640 Mute This Topic: https://lists.fd.io/mt/74649468/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-