Hi Ewan,

It should never be invalid. These sorts of checks in the data-plane only serve 
to reduce performance.
You should examine the VLIB nodes prior to the ipv6 lookup (multicast or 
unicast) to determine which one is setting the FIB index incorrectly.

Regards,
neale

From: "[email protected]" <[email protected]>
Date: Monday, 6 November 2017 at 04:55
To: "Neale Ranns (nranns)" <[email protected]>, vpp-dev <[email protected]>
Subject: Re: Re: [vpp-dev] IPV6 Forwarding error

Hi  neale,
I add this protection, but other errors come out in many different ways, all 
are ipv6 fib process errors.



fib_node_index_t
ip6_mfib_table_lookup2 (const ip6_mfib_t *mfib,
                        const ip6_address_t *src,
                        const ip6_address_t *grp)
{
    ip6_mfib_node_t *i6mn;
    ip6_mfib_key_t key;
    if(!mfib)
    return 0; (or  return ~0;)

    IP6_MFIB_MK_KEY(grp, src, &key);

    i6mn = (ip6_mfib_node_t*) rn_match(key.key,
                                       (struct radix_node_head *)mfib->rhead); 
// const cast

    ASSERT(NULL != i6mn);

    return (i6mn->i6mn_entry);
}


Regards,
Ewan
________________________________
[email protected]

From: [email protected]<mailto:[email protected]>
Date: 2017-11-06 09:17
To: Neale Ranns (nranns)<mailto:[email protected]>; 
vpp-dev<mailto:[email protected]>
Subject: Re: Re: [vpp-dev] IPV6 Forwarding error
Hi neale,
I've added a protection on it, but should it be invalid somehow?

Regards,
Ewan
________________________________
[email protected]

From: Neale Ranns (nranns)<mailto:[email protected]>
Date: 2017-11-04 23:01
To: [email protected]<mailto:[email protected]>; 
vpp-dev<mailto:[email protected]>
Subject: Re: [vpp-dev] IPV6 Forwarding error

Hi Ewan,

I would guess that fib_index0 is invalid.

/neale

From: <[email protected]> on behalf of "[email protected]" 
<[email protected]>
Date: Saturday, 4 November 2017 at 11:11
To: vpp-dev <[email protected]>
Subject: [vpp-dev] IPV6 Forwarding error

Hi all,
Here is ipv6 forwarding error, my version is 17.04.
Any idea?




Thread 1 "vpp_main" received signal SIGSEGV, Segmentation fault.
mfib_forward_lookup (is_v4=0, frame=0x7fffb8626f00, node=0x7fffb5cffe80, 
vm=0x7ffff79aa2a0 <vlib_global_main>)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vnet/mfib/mfib_forward.c:305
305                 mfei0 = ip6_mfib_table_lookup2(ip6_mfib_get(fib_index0),
(gdb) bt
#0  mfib_forward_lookup (is_v4=0, frame=0x7fffb8626f00, node=0x7fffb5cffe80, 
vm=0x7ffff79aa2a0 <vlib_global_main>)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vnet/mfib/mfib_forward.c:305
#1  ip6_mfib_forward_lookup (frame=0x7fffb8626f00, node=0x7fffb5cffe80, 
vm=0x7ffff79aa2a0 <vlib_global_main>)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vnet/mfib/mfib_forward.c:353
#2  ip6_mfib_forward_lookup_avx2 (vm=0x7ffff79aa2a0 <vlib_global_main>, 
node=0x7fffb5cffe80, frame=0x7fffb8626f00)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vnet/mfib/mfib_forward.c:369
#3  0x00007ffff7757129 in dispatch_node (vm=0x7ffff79aa2a0 <vlib_global_main>, 
node=0x7fffb5cffe80, type=<optimized out>,
    dispatch_state=VLIB_NODE_STATE_POLLING, frame=<optimized out>, 
last_time_stamp=10161712619298)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/main.c:998
#4  0x00007ffff775741d in dispatch_pending_node (vm=vm@entry=0x7ffff79aa2a0 
<vlib_global_main>, p=0x7fffb8556de8,
    last_time_stamp=<optimized out>) at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/main.c:1144
#5  0x00007ffff7757e7d in vlib_main_or_worker_loop (is_main=1, 
vm=0x7ffff79aa2a0 <vlib_global_main>)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/main.c:1591
#6  vlib_main_loop (vm=0x7ffff79aa2a0 <vlib_global_main>) at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/main.c:1611
#7  vlib_main (vm=vm@entry=0x7ffff79aa2a0 <vlib_global_main>, 
input=input@entry=0x7fffb4cd4fa0)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/main.c:1739
#8  0x00007ffff7790f23 in thread0 (arg=140737347494560) at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/unix/main.c:507
#9  0x00007ffff5a3dce0 in clib_calljmp () at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vppinfra/longjmp.S:110
#10 0x00007fffffffd410 in ?? ()
#11 0x00007ffff779193d in vlib_unix_main (argc=<optimized out>, argv=<optimized 
out>)
    at 
/home/wangzy/Desktop/VBRASV100R001/vpp1704/build-data/../src/vlib/unix/main.c:606

Regards,
Ewan
________________________________
[email protected]
_______________________________________________
vpp-dev mailing list
[email protected]
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to