From da652cc46604f5c98736404a2342ac3a178240e7 Mon Sep 17 00:00:00 2001 From: Florin Coras Date: Sun, 27 Aug 2023 23:14:50 -0700 Subject: vcl: set min threshold for tx ntf Make sure there's at least 3% space in the tx fifo before notifying vcl of a tx event. The threshold is somewhat arbibrary but for a 4M fifo, it now means that ~120kB of space should be available. Should help minimize the amount of tx notifications generated by session layer when apps are faster. Type: improvement Signed-off-by: Florin Coras Change-Id: I11dd0931dca8f989000a2481f1f495bd267589c4 --- src/vcl/vcl_private.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/vcl/vcl_private.h') diff --git a/src/vcl/vcl_private.h b/src/vcl/vcl_private.h index 8345e34e0c1..41a11b7123f 100644 --- a/src/vcl/vcl_private.h +++ b/src/vcl/vcl_private.h @@ -675,7 +675,11 @@ vcl_session_add_want_deq_ntf (vcl_session_t *s, svm_fifo_deq_ntf_t evt) { svm_fifo_t *txf = vcl_session_is_ct (s) ? s->ct_tx_fifo : s->tx_fifo; if (txf) - svm_fifo_add_want_deq_ntf (txf, evt); + { + svm_fifo_add_want_deq_ntf (txf, evt); + /* Request tx notification only if 3% of fifo is empty */ + svm_fifo_set_deq_thresh (txf, 0.03 * svm_fifo_size (txf)); + } } static inline void -- cgit 1.2.3-korg