From 38fb88973f26ddc826ae0ca2c82d73ee4dac7ae1 Mon Sep 17 00:00:00 2001 From: Neale Ranns Date: Fri, 8 Mar 2019 12:18:40 +0000 Subject: FIB: crash when deleting default route 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 --- src/vnet/fib/fib_table.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/vnet/fib/fib_table.c b/src/vnet/fib/fib_table.c index f46a5b42183..56c8f030fda 100644 --- a/src/vnet/fib/fib_table.c +++ b/src/vnet/fib/fib_table.c @@ -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]) { /* -- cgit 1.2.3-korg