[dpdk-dev] ixgbe vector mode not working.

Liang, Cunming cunming.liang at intel.com
Sat Feb 28 04:33:52 CET 2015


Hi Stephen,

The root cause is about the rx descriptor number.
As we use below code to quick process the rx_tail wrap, it require rxd value is a 2^n.
"rxq->rx_tail = (uint16_t)(rxq->rx_tail & (rxq->nb_rx_desc - 1));"
We should add more checking on the input rxd, if checking fail, then tend to use scalar pmd.
Thanks for the report, I'll send fix patch soon.

-Cunming

> -----Original Message-----
> From: Stephen Hemminger [mailto:stephen at networkplumber.org]
> Sent: Thursday, February 26, 2015 9:07 AM
> To: Liang, Cunming
> Cc: Nemeth, Balazs; Richardson, Bruce; Neil Horman; dev at dpdk.org
> Subject: Re: ixgbe vector mode not working.
> 
> On Wed, 25 Feb 2015 08:49:48 +0000
> "Liang, Cunming" <cunming.liang at intel.com> wrote:
> 
> > Hi Stephen,
> >
> > Thanks for the info, with rxd=4000, I can reproduce it.
> > On that time, it runs out of mbuf.
> > I'll follow up this issue.
> 
> The first time I ran it, the code was configure rx/tx conf
> which was leftover from older versions.
> 
> Second time I ran it and the same hang happened.
> Looking at mbuf pool statistics I see that it gets exhausted,
> even when extra mbuf's are added to the pool.
> 
> Looks like a memory leak.


More information about the dev mailing list