From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp2.execulink.net (smtp2.execulink.net [69.63.44.83]) by dpdk.org (Postfix) with ESMTP id E21D0592A for ; Thu, 21 May 2015 20:31:52 +0200 (CEST) Received: from [64.7.137.182] (helo=neuralfour.localnet) by smtp2.execulink.net with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.77) (envelope-from ) id 1YvVG3-0000S8-IP; Thu, 21 May 2015 14:31:52 -0400 From: Jeff Weeks To: Thomas Monjalon Date: Thu, 21 May 2015 14:33:27 -0400 Message-ID: <1808341.hlnalyB99n@neuralfour> User-Agent: KMail/4.14.6 (Linux/3.16.7-21-desktop; KDE/4.14.6; x86_64; ; ) In-Reply-To: <1912621.IS2FFEymAS@xps13> References: <1612889.HZQ1eI9Ptg@neuralfour> <1912621.IS2FFEymAS@xps13> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Cc: dev@dpdk.org Subject: Re: [dpdk-dev] traffic no longer readable... X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 May 2015 18:31:53 -0000 On Wednesday, May 20, 2015 06:31:33 PM Thomas Monjalon wrote: > 2015-05-20 11:59, Jeff Weeks: > > forgot to include the list... > > > > ---------- Forwarded Message ---------- > > > > Subject: Re: [dpdk-dev] traffic no longer readable... > > Date: Wednesday, May 20, 2015, 11:56:47 AM > > From: Jeff Weeks > > To: Thomas Monjalon > > > > On Wednesday, May 20, 2015 05:33:20 PM you wrote: > > > 2015-05-20 11:11, Jeff Weeks: > > > > Hello all, > > > > > > > > I've been developing with dpdk, using virtio, and I'm noticing that I > > > > can > > > > often get into a state whereby I no longer receive any packets. > > > > > > > > The call to rte_eth_rx_burst always returns 0, indicating the rx queue > > > > is > > > > empty. > > > > > > > > How is this queue filled? I see there is a dpdk thread, which waits > > > > on an > > > > epoll fd for interrupts. I set a breakpoint here, and it appeared as > > > > though we were waiting forever on the epoll fd. This, to me, seemed > > > > to > > > > be the source of the issue I'm seeing (presumably interrupts cause us > > > > to > > > > read off the nic and fill the queue?)... but, oddly enough, I see the > > > > same behaviour even when I'm receiving packets. > > > > > > > > Have I misinterpreted how this is supposed to work? Or is gdb > > > > behaving > > > > poorly for me (wouldn't be surprising...). > > > > > > > > What/how else can I further investigate this? > > > > > > Are you using the latest version (git HEAD)? > > > Are you using DPDK vhost? > > > > I am using vhost, yes. > > I'm currently using 1.8. Is this a known issue fixed in HEAD, or 2.0? > > Maybe it is due to this (fixed) bug: > http://dpdk.org/browse/dpdk/commit/?id=159793ac867 Hmm... I realize now that I've misspoke on *both* questions; my apologies. I am, in fact, running dpdk 1.7. And, while I am using the linux vhost kernel module, I am not using the dpdk vhost sample code, so the above bugfix doesn't apply. While I'd like to upgrade to the latest dpdk code, the API changes make this less-than-trivial at the moment. Are there specific areas I should be looking to debug this? rte_eth_rx_burst believes the rx queue is empty. I'm not sure whether this is indication that the "filler" of the queue is misbehaving, or if the dpdk side of reading the queue is misbehaving. --Jeff