aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2023-04-04 11:51:37 -0700
committerFlorin Coras <florin.coras@gmail.com>2023-04-04 20:36:29 +0000
commit1315d14d4c022d6fcfe43e6223b8ff557508b31f (patch)
treed73b8898fd81114c2bb8decc3f7ac5de69366c21
parent156d452750ab37a51984938bf4a8ab0e16650d82 (diff)
session: fix ct connect session flush assert
Type: fix Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: I90eaeed07dc4864adfed3bc4cef1e3edacf4bf8f
-rw-r--r--src/vnet/session/application_local.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/vnet/session/application_local.c b/src/vnet/session/application_local.c
index ef46e99811f..6ac4da2c655 100644
--- a/src/vnet/session/application_local.c
+++ b/src/vnet/session/application_local.c
@@ -794,12 +794,14 @@ ct_fwrk_flush_connects (void *rpc_args)
ct_worker_t *wrk;
u8 need_rpc;
- fwrk_index = pointer_to_uword (rpc_args);
- ASSERT (fwrk_index == cm->fwrk_thread);
+ fwrk_index = cm->fwrk_thread;
n_workers = vec_len (cm->fwrk_pending_connects);
for (thread_index = fwrk_index; thread_index < n_workers; thread_index++)
{
+ if (!vec_len (cm->fwrk_pending_connects[thread_index]))
+ continue;
+
wrk = ct_worker_get (thread_index);
/* Connects can be done without worker barrier, grab dst worker lock */