* [dpdk-dev] [Bug 804] distributor: exiting workers can hang distributor core
@ 2021-09-02 18:03 bugzilla
0 siblings, 0 replies; only message in thread
From: bugzilla @ 2021-09-02 18:03 UTC (permalink / raw)
To: dev
https://bugs.dpdk.org/show_bug.cgi?id=804
Bug ID: 804
Summary: distributor: exiting workers can hang distributor core
Product: DPDK
Version: 21.08
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: examples
Assignee: dev@dpdk.org
Reporter: brian90013@gmail.com
Target Milestone: ---
Created attachment 171
--> https://bugs.dpdk.org/attachment.cgi?id=171&action=edit
patch to avoid hanging
Hello,
I have been testing the distributor example using one interface and five cores
- ./build/distributor_app -l 10-14 -- -p 1. This leaves me one worker thread. I
noticed the application often hangs after I supply SIGINT and I have to
manually kill the process.
I added some additional debugging and discovered the distributor core is not
returning from rte_distributor_flush(). Looking inside that function, I see the
loop waiting for total_outstanding() to return 0. I believe that requires all
workers to have returned all in-flight packets?
Moving to the worker core, it calls rte_distributor_get_pkt(), does its
processing, then loops to the start of the while(!quit_signal_work) block. When
exiting, this is true, so it immediately exits the loop - without returning the
last batch of packets. I believe this is what is causing the distributor core
to fail to exit as it continues to loop waiting for workers to return their
buffers.
As a test, I added a call to rte_distributor_return_pkt(d, id, buf, num)
outside the worker while() loop but before the thread exits. I've run many
tests and have not seen the process hang once.
--
You are receiving this mail because:
You are the assignee for the bug.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2021-09-02 18:03 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-02 18:03 [dpdk-dev] [Bug 804] distributor: exiting workers can hang distributor core bugzilla
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.