From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <konstantin.ananyev@intel.com>
Received: from mga11.intel.com (mga11.intel.com [192.55.52.93])
 by dpdk.org (Postfix) with ESMTP id CABC1C3C8
 for <dev@dpdk.org>; Mon,  3 Aug 2015 12:16:18 +0200 (CEST)
Received: from orsmga003.jf.intel.com ([10.7.209.27])
 by fmsmga102.fm.intel.com with ESMTP; 03 Aug 2015 03:16:17 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.15,600,1432623600"; d="scan'208";a="618167635"
Received: from irsmsx153.ger.corp.intel.com ([163.33.192.75])
 by orsmga003.jf.intel.com with ESMTP; 03 Aug 2015 03:16:18 -0700
Received: from irsmsx105.ger.corp.intel.com ([169.254.7.223]) by
 IRSMSX153.ger.corp.intel.com ([169.254.9.59]) with mapi id 14.03.0224.002;
 Mon, 3 Aug 2015 11:16:15 +0100
From: "Ananyev, Konstantin" <konstantin.ananyev@intel.com>
To: HePeng <xnhp0320@icloud.com>, "Lu, Wenzhuo" <wenzhuo.lu@intel.com>
Thread-Topic: [dpdk-dev] [PATCH] [new]ixgbe:set txep.mbuf to NULL when
 calling ixgbe_tx_free_bufs
Thread-Index: AQHQy/krRLlOJ6tMzEmS3nk9TAe1bJ35hJwAgABaQ6qAAAACgIAAAgyAgAAHFQCAAAgxgIAAIPEw
Date: Mon, 3 Aug 2015 10:16:15 +0000
Message-ID: <2601191342CEEE43887BDE71AB97725836A6C214@irsmsx105.ger.corp.intel.com>
References: <1438392394-19653-1-git-send-email-xnhp0320@icloud.com>
 <6A0DE07E22DDAD4C9103DF62FEBC0909D1A508@shsmsx102.ccr.corp.intel.com>
 <179B898C-F03A-4250-8857-236CFC5274BA@icloud.com>
 <6A0DE07E22DDAD4C9103DF62FEBC0909D1A59D@shsmsx102.ccr.corp.intel.com>
 <470BDF91-6FAE-4605-885E-78F02F0F0FBF@icloud.com>
 <6A0DE07E22DDAD4C9103DF62FEBC0909D1A630@shsmsx102.ccr.corp.intel.com>
 <9375FD93-28D0-47AD-9CBB-CD099E3CD488@icloud.com>
 <6A0DE07E22DDAD4C9103DF62FEBC0909D1A660@shsmsx102.ccr.corp.intel.com>
 <379327D6-D2AB-467E-9F95-88F449B7EF4E@icloud.com>
In-Reply-To: <379327D6-D2AB-467E-9F95-88F449B7EF4E@icloud.com>
Accept-Language: en-IE, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [163.33.239.182]
Content-Type: text/plain; charset="iso-2022-jp"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH] [new]ixgbe:set txep.mbuf to NULL when
 calling ixgbe_tx_free_bufs
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Aug 2015 10:16:19 -0000

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 =3D 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@dpdk.org] On Behalf Of HePeng
> Sent: Monday, August 03, 2015 10:12 AM
> To: Lu, Wenzhuo
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] [new]ixgbe:set txep.mbuf to NULL when cal=
ling ixgbe_tx_free_bufs
>=20
>  Hi, wenzhuo,
> 	Have to check that because I really had the panic when compile my code w=
ith dpdk 2.0.0.
>=20
> 	Also I checked the code in the dpdk git repo. It does not check the refe=
rence 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>.
>=20
> 	Thanks for reviewing.
>=20
> > =1B$B:_=1B(B 2015=1B$BG/=1B(B8=1B$B7n=1B(B3=1B$BF|!$2<8a=1B(B4:42=1B$B!=
$=1B(BLu, Wenzhuo <wenzhuo.lu@intel.com> =1B$B<LF;!'=1B(B
> >
> > Hi  Peng,
> > There=1B$B!G=1B(Bre 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 ixgb=
e_rxtx_vec.c already has the sanity check for reference
> count.
> > Thanks.