diff options
author | Maria Matejka <mq@ucw.cz> | 2022-01-11 13:10:01 +0100 |
---|---|---|
committer | Maria Matejka <mq@ucw.cz> | 2022-02-03 10:30:33 +0100 |
commit | 87512ccdff9cb95847e3bec36893665558db5c95 (patch) | |
tree | 8e73268a7b21ed019a8d1eb29a97e11bceb0d19a | |
parent | f22bab98186a52f6e7247422ead4332f4c37e0ce (diff) |
Route table fast prune fixup
-rw-r--r-- | nest/rt-table.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/nest/rt-table.c b/nest/rt-table.c index 2ed622cc..5f1e1679 100644 --- a/nest/rt-table.c +++ b/nest/rt-table.c @@ -2308,16 +2308,13 @@ rt_prune_table(void *data) if (tab->prune_state == 0) return; + if (tab->delete && !rt_fast_prune_ready(tab)) + return; + rt_lock_table(tab); if (tab->prune_state == 1) { - if (tab->delete && !rt_fast_prune_ready(tab)) - { - rt_unlock_table(tab); - return; - } - /* Mark channels to flush */ WALK_LIST2(ih, n, tab->imports, n) if (ih->import_state == TIS_STOP) |