2015-02-28 03:33, Liang, Cunming: > 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.
Fixed in http://dpdk.org/browse/dpdk/commit/?id=352078e8e196 Thanks > > -----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.