Clean up multi-thread barrier-sync hold-down timer 07/19307/2 stable/1807
authorDave Barach <[email protected]>
Thu, 2 May 2019 19:48:15 +0000 (15:48 -0400)
committerDave Wallace <[email protected]>
Fri, 24 May 2019 13:56:01 +0000 (13:56 +0000)
commit511ce2572a9710835c6722a09a93b4dd80ab7fae
treee91aa851cab7e9410aaa1a285cee53801bf51310
parent070b810a883d789c97a9d89f56f952e14ed9999a
Clean up multi-thread barrier-sync hold-down timer

Main thread: don't bother with the barrier sync hold-down timer if
none of the worker threads are busy.

Worker threads: avoid epoll_pwait (10ms timeout) when the
control-plane has been active in the last half-second.

Cherry-pick a recent dangling reference fix: pool_elt_at_index after
e.g. rx callback is required, in case the unix file pool expands.

Manual feature backport to 18.07

Change-Id: I745fbb8a12aeda34b0ec7b6dcda66c0e25c3eee1
Signed-off-by: Dave Barach <[email protected]>
src/vlib/main.h
src/vlib/threads.c
src/vlib/threads.h
src/vlib/unix/input.c