Thanks, I had validated the 'rx_drop_en' setting. It's worked. 
Regards,/Liang------------------------------------------------------------------From:Bruce
 Richardson <bruce.richardson at intel.com>Time:2015 Jan 19 (Mon) 18:58To:?? 
<liang.xu at cinfotech.cn>Cc:dev <dev at dpdk.org>Subject:Re: [dpdk-dev] Should 
the other queues at same port work when one queue is full ?
On Sun, Jan 18, 2015 at 07:12:31PM +0800, XU Liang wrote:
> I configured the 82599 ports to work in multi-queue mode and flow director to 
> assign different TCP connections to different queues. A multi-process 
> application receive packets from queues and each?process reads a queue. When 
> I kill one process, the process's?queue is full, all?descriptors of the queue 
> is used. Then I send packets to other queues, but no?packet is received by 
> other processes from other queues. And no ierrors at the port stats.??I'm not 
> sure it's a bug or designed that way.?
> I expect that when a process exits abnormally affect only part of the 
> connections, but now all the connections are not working properly.?How can I 
> just turn off the exception queue, so that other processes / queues work 
> properly.

You need to turn on the "drop enable" bit in your NIC configuration to allow 
packets for full queues to be dropped, allowing other queues to continue as 
normal.
In DPDK this is set by the value "rx_drop_en" in the rx configuration.

In the latest DPDK tree, you can see this value being set for the symmetric mp
example application in: examples/multi_process/symmetric_mp/main.c

Regards,
/Bruce

Reply via email to