aboutsummaryrefslogtreecommitdiffstats
path: root/src/vcl/vcl_private.h
diff options
context:
space:
mode:
authorFlorin Coras <fcoras@cisco.com>2020-03-04 22:20:12 +0000
committerDave Barach <openvpp@barachs.net>2020-03-06 15:08:24 +0000
commit243edd5ffe5cb62be5fe806a33026a7bdfca499f (patch)
tree9f6c4238d261bfa12a96904eb41bd204105dfda4 /src/vcl/vcl_private.h
parent5e0e0df9b494bb9ef698533db42f2ea496046a32 (diff)
vcl: refactor vls to minimize lock usage
Type: refactor - per vls worker private pool of sessions - deep copy of vls worker data structures on fork - maintain a global, i.e., heap allocated, and lock protected pool of elements that track sessions that are shared between workers (due to forking). Credit for uncovering the issue goes to Intel team contributing code to VSAP (Ping, Yuwei, Shujun, Guoao). Signed-off-by: Florin Coras <fcoras@cisco.com> Change-Id: Id7d8bb06ecd7b03e4134f1cae23e740cf4634649
Diffstat (limited to 'src/vcl/vcl_private.h')
-rw-r--r--src/vcl/vcl_private.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vcl/vcl_private.h b/src/vcl/vcl_private.h
index b50bad26b90..3866563435b 100644
--- a/src/vcl/vcl_private.h
+++ b/src/vcl/vcl_private.h
@@ -374,7 +374,8 @@ vcl_session_alloc (vcl_worker_t * wrk)
static inline void
vcl_session_free (vcl_worker_t * wrk, vcl_session_t * s)
{
- VDBG (0, "session %u [0x%llx] removed", s->session_index, s->vpp_handle);
+ /* Debug level set to 1 to avoid debug messages while ldp is cleaning up */
+ VDBG (1, "session %u [0x%llx] removed", s->session_index, s->vpp_handle);
pool_put (wrk->sessions, s);
}