From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruce Richardson Subject: Re: Should the other queues at same port work when one queue is full ? Date: Mon, 19 Jan 2015 10:57:55 +0000 Message-ID: <20150119105754.GA12244@bricha3-MOBL3> References: Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Cc: dev To: XU Liang Return-path: Content-Disposition: inline In-Reply-To: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" 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 direc= tor to assign different TCP connections to different queues. A multi-proc= ess application receive packets from queues and each=A0process reads a qu= eue. When I kill one process, the process's=A0queue is full, all=A0descri= ptors of the queue is used. Then I send packets to other queues, but no=A0= packet is received by other processes from other queues. And no ierrors a= t the port stats.=A0=A0I'm not sure it's a bug or designed that way.=A0 > I expect that when a process exits abnormally affect only part of the c= onnections, but now all the connections are not working properly.=A0How c= an 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 al= low=20 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 symmetr= ic mp example application in: examples/multi_process/symmetric_mp/main.c Regards, /Bruce