summaryrefslogtreecommitdiff
path: root/zebra/dplane_fpm_nl.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2024-10-10 16:00:08 -0400
committerDonald Sharp <sharpd@nvidia.com>2024-10-11 09:37:37 -0400
commit963792e8c5ba834f1f7bb2555e90aa4b2ff6f33c (patch)
tree02926b8c3ea074f7d8c63521047a7bf09c29cb35 /zebra/dplane_fpm_nl.c
parentadc0f004cf84650990543a3e8456f2222a326ceb (diff)
zebra: Only notify dplane work pthread when needed
The fpm_nl_process function was getting the count of the total number of ctx's processed. This leads to after having processed 1 context to always signal the dataplane that there is work to do. Change the code to only notify the dplane worker when a context was actually added to the outgoing context queue. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'zebra/dplane_fpm_nl.c')
-rw-r--r--zebra/dplane_fpm_nl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/zebra/dplane_fpm_nl.c b/zebra/dplane_fpm_nl.c
index d594fc2c86..0e54952eea 100644
--- a/zebra/dplane_fpm_nl.c
+++ b/zebra/dplane_fpm_nl.c
@@ -1525,7 +1525,7 @@ static void fpm_process_queue(struct event *t)
* until the dataplane thread gets scheduled for new,
* unrelated work.
*/
- if (dplane_provider_out_ctx_queue_len(fnc->prov) > 0)
+ if (processed_contexts)
dplane_provider_work_ready();
}