FIB: crash when deleting default route 38/18138/3
authorNeale Ranns <nranns@cisco.com>
Fri, 8 Mar 2019 12:18:40 +0000 (12:18 +0000)
committerFlorin Coras <florin.coras@gmail.com>
Tue, 12 Mar 2019 01:35:31 +0000 (01:35 +0000)
when adding a recursive path the table is locked
so that it can be removed when the last recursive path
is removed. however, not all RR source'd prefixs use
a recursive path. so flushing the table of all RR source'd
entries is not correct.

Change-Id: Id4010774011046e66ddc443ac83cb8e9245313dd
Signed-off-by: Neale Ranns <nranns@cisco.com>
src/vnet/fib/fib_table.c

index f46a5b4..56c8f03 100644 (file)
@@ -1244,15 +1244,6 @@ fib_table_unlock (u32 fib_index,
     fib_table->ft_locks[source]--;
     fib_table->ft_locks[FIB_TABLE_TOTAL_LOCKS]--;
 
-    if (0 == fib_table->ft_locks[source])
-    {
-        /*
-         * The source no longer needs the table. flush any routes
-         * from it just in case
-         */
-        fib_table_flush(fib_index, proto, source);
-    }
-
     if (0 == fib_table->ft_locks[FIB_TABLE_TOTAL_LOCKS])
     {
         /*