aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Barach <dave@barachs.net>2016-12-20 12:48:14 -0500
committerDamjan Marion <dmarion.lists@gmail.com>2016-12-20 19:07:04 +0000
commitfdf494439b04d3a498aa488f0b407c1a2346262f (patch)
treebc938c69d300943ff7cdab01070a8045e0f507b6
parent767b2f59a85d7b80a5dc597363261e0b181601bf (diff)
VPP-525: multi-thread case binary API post-mortem dump AWOL
root cause: blocking all signals in worker threads Change-Id: Ife0a5f04be0648fab84e493f203e79ba94890052 Signed-off-by: Dave Barach <dave@barachs.net>
-rw-r--r--vlib/vlib/threads.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/vlib/vlib/threads.c b/vlib/vlib/threads.c
index 27b622f5137..c5e58bc001a 100644
--- a/vlib/vlib/threads.c
+++ b/vlib/vlib/threads.c
@@ -472,12 +472,15 @@ vlib_worker_thread_init (vlib_worker_thread_t * w)
{
vlib_thread_main_t *tm = vlib_get_thread_main ();
- /* worker threads wants no signals. */
- {
- sigset_t s;
- sigfillset (&s);
- pthread_sigmask (SIG_SETMASK, &s, 0);
- }
+ /*
+ * Note: disabling signals in worker threads as follows
+ * prevents the api post-mortem dump scheme from working
+ * {
+ * sigset_t s;
+ * sigfillset (&s);
+ * pthread_sigmask (SIG_SETMASK, &s, 0);
+ * }
+ */
clib_mem_set_heap (w->thread_mheap);