From 998dfd3c0fa1e25d3cea247fd9391a158108858b Mon Sep 17 00:00:00 2001 From: Ping Yu Date: Mon, 13 Aug 2018 10:26:26 -0400 Subject: [PATCH] reduce polling and resume overhead by checking if inflight request exists Change-Id: I0777a00f0cc082bab3348be8ec0be39faa50ffed Signed-off-by: Ping Yu --- src/plugins/tlsopenssl/tls_async.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/plugins/tlsopenssl/tls_async.c b/src/plugins/tlsopenssl/tls_async.c index 3b469b9d3c4..110a6311673 100644 --- a/src/plugins/tlsopenssl/tls_async.c +++ b/src/plugins/tlsopenssl/tls_async.c @@ -512,11 +512,14 @@ tls_async_process (vlib_main_t * vm, vlib_node_runtime_t * rt, vlib_frame_t * f) { u8 thread_index; + openssl_async_t *om = &openssl_async_main; thread_index = vlib_get_thread_index (); - openssl_async_polling (); - - tls_resume_from_crypto (thread_index); + if (pool_elts (om->evt_pool[thread_index]) > 0) + { + openssl_async_polling (); + tls_resume_from_crypto (thread_index); + } return 0; } -- 2.16.6