[dpdk-dev] [PATCH] [new]ixgbe:set txep.mbuf to NULL when calling ixgbe_tx_free_bufs

Ananyev, Konstantin konstantin.ananyev at intel.com
Mon Aug 3 12:16:15 CEST 2015


Hi Peng,

As Wenzhuo pointed, we have a special version of tx_release_mbufs fo vector TX:
ixgbe_tx_queue_release_mbufs_vec().
It only frees sw_ring[] entries that contains valid mbufs.
So we don't need to set sw_ring[].mbuf = NULL at  ixgbe_tx_free_bufs().
About the panic you mentioned: I think that was fixed just few days ago.
Please have a look at:
http://dpdk.org/ml/archives/dev/2015-July/022146.html
Konstantin

> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of HePeng
> Sent: Monday, August 03, 2015 10:12 AM
> To: Lu, Wenzhuo
> Cc: dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] [new]ixgbe:set txep.mbuf to NULL when calling ixgbe_tx_free_bufs
> 
>  Hi, wenzhuo,
> 	Have to check that because I really had the panic when compile my code with dpdk 2.0.0.
> 
> 	Also I checked the code in the dpdk git repo. It does not check the reference count, it just only calculate
> the begin positions of mbufs that really needs to be recycled.
> 	my code is retrieved from git://dpdk.org/dpdk <git://dpdk.org/dpdk>.
> 
> 	Thanks for reviewing.
> 
> > 在 2015年8月3日,下午4:42,Lu, Wenzhuo <wenzhuo.lu at intel.com> 写道:
> >
> > Hi  Peng,
> > There’re 2 versions of ixgbe_tx_queue_release_mbufs. One in ixgbe_rxtx.c, the other is in ixgbe_rxtx_vec.c.
> > What you shown is the one in ixgbe_rxtx.c. You can find the one in ixgbe_rxtx_vec.c already has the sanity check for reference
> count.
> > Thanks.



More information about the dev mailing list