From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id C2CB41B3B6; Fri, 13 Jul 2018 05:05:45 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 12 Jul 2018 20:05:44 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,346,1526367600"; d="scan'208";a="245333656" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by fmsmga006.fm.intel.com with ESMTP; 12 Jul 2018 20:05:44 -0700 Received: from fmsmsx123.amr.corp.intel.com (10.18.125.38) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 12 Jul 2018 20:05:44 -0700 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by fmsmsx123.amr.corp.intel.com (10.18.125.38) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 12 Jul 2018 20:05:44 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.100]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.81]) with mapi id 14.03.0319.002; Fri, 13 Jul 2018 11:05:42 +0800 From: "Zhang, Qi Z" To: "Zhao1, Wei" , "dev@dpdk.org" CC: "stable@dpdk.org" Thread-Topic: [PATCH] net/i40e: fix FDIR check programming status error Thread-Index: AQHUGPPDclZqixEeOUy7jeltEZ49dqSMeSZg Date: Fri, 13 Jul 2018 03:05:41 +0000 Message-ID: <039ED4275CED7440929022BC67E7061153259C5E@SHSMSX103.ccr.corp.intel.com> References: <1531297520-16545-1-git-send-email-wei.zhao1@intel.com> In-Reply-To: <1531297520-16545-1-git-send-email-wei.zhao1@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMTI4MTljN2ItNzNhYy00NjdmLWFjOTYtZmNjOGNjYmE3MmM1IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiTHhTVlNUazErSFwvUW93d0xmRkk1ZkxwWEM3QU1ZaUFwSzhoY3Q4a2lOczJDOWowaFZKTXlPd3FiUlFnc1puVysifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.200.100 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH] net/i40e: fix FDIR check programming status error X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Jul 2018 03:05:47 -0000 > -----Original Message----- > From: Zhao1, Wei > Sent: Wednesday, July 11, 2018 4:25 PM > To: dev@dpdk.org > Cc: Zhang, Qi Z ; stable@dpdk.org; Zhao1, Wei > > Subject: [PATCH] net/i40e: fix FDIR check programming status error >=20 > In i40e FDIR PMD code for checking programming status function > i40e_check_fdir_programming_status(), the initial value of return value r= et > should be set to -1 not 0, because if DD bit of I40E_RX_DESC_STATUS_DD is= not > write back, this function will return > 0 to upper function, this give an error info to upper function, the fact = for this is > it is time out for DD write back and it should return -1. >=20 > Fixes: 05999aab4ca6 ("i40e: add or delete flow director") > Signed-off-by: Wei Zhao > --- > drivers/net/i40e/i40e_fdir.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) >=20 > diff --git a/drivers/net/i40e/i40e_fdir.c b/drivers/net/i40e/i40e_fdir.c = index > d41601a..b958bf6 100644 > --- a/drivers/net/i40e/i40e_fdir.c > +++ b/drivers/net/i40e/i40e_fdir.c > @@ -1315,7 +1315,7 @@ i40e_check_fdir_programming_status(struct > i40e_rx_queue *rxq) > uint32_t rx_status; > uint32_t len, id; > uint32_t error; > - int ret =3D 0; > + int ret =3D -1; >=20 > rxdp =3D &rxq->rx_ring[rxq->rx_tail]; > qword1 =3D rte_le_to_cpu_64(rxdp->wb.qword1.status_error_len); > @@ -1360,6 +1360,7 @@ i40e_check_fdir_programming_status(struct > i40e_rx_queue *rxq) > I40E_PCI_REG_WRITE(rxq->qrx_tail, rxq->nb_rx_desc - 1); > else > I40E_PCI_REG_WRITE(rxq->qrx_tail, rxq->rx_tail - 1); > + ret =3D 0; Is it possible to overwrite previous ret =3D -1 which is not what we want? I would prefer int ret =3D 0; If (dd bit is set) { If xxx Ret =3D -1; If xxx=20 Ret =3D -1; } else { ret =3D -1; } return ret; > } >=20 > return ret; > -- > 2.7.5