diff options
author | Vladimir Kropylev <vladimir.kropylev@enea.com> | 2019-06-17 21:38:00 +0300 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2019-06-19 02:25:58 +0000 |
commit | f867cf1656b5906fb112f9e60ff65e46f6e1719a (patch) | |
tree | 5f2025eacd8b3e0049b66823e7519b2472dbd7c5 /src/vnet/session/session.c | |
parent | c79b32deb018b0adfcf96d878dffaaaa9a1fd6b1 (diff) |
session: call session_dequeue_notify after svm_fifo_dequeue_drop
Type: fix
dequeue_notify callback at app-layer needs to know available space in fifo,
so, session_dequeue_notify should be called after svm_fifo_dequeue_drop
Change-Id: I136675d29ec32bea9b33a05deb6710f72ce8d5b1
Signed-off-by: Vladimir Kropylev <vladimir.kropylev@enea.com>
Diffstat (limited to 'src/vnet/session/session.c')
-rw-r--r-- | src/vnet/session/session.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/vnet/session/session.c b/src/vnet/session/session.c index 4b3ce016be5..8aa4af935e9 100644 --- a/src/vnet/session/session.c +++ b/src/vnet/session/session.c @@ -453,11 +453,14 @@ u32 session_tx_fifo_dequeue_drop (transport_connection_t * tc, u32 max_bytes) { session_t *s = session_get (tc->s_index, tc->thread_index); + u32 rv; + + rv = svm_fifo_dequeue_drop (s->tx_fifo, max_bytes); if (svm_fifo_needs_tx_ntf (s->tx_fifo, max_bytes)) session_dequeue_notify (s); - return svm_fifo_dequeue_drop (s->tx_fifo, max_bytes); + return rv; } static inline int |