From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 387BAA04F3 for ; Fri, 3 Jan 2020 11:49:43 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1F2B21BFCE; Fri, 3 Jan 2020 11:49:43 +0100 (CET) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by dpdk.org (Postfix) with ESMTP id 0BD3E1BC25 for ; Fri, 20 Dec 2019 02:45:31 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 19 Dec 2019 17:45:30 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,333,1571727600"; d="scan'208";a="267394690" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by FMSMGA003.fm.intel.com with ESMTP; 19 Dec 2019 17:45:30 -0800 Received: from fmsmsx114.amr.corp.intel.com (10.18.116.8) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 19 Dec 2019 17:45:30 -0800 Received: from cdsmsx103.ccr.corp.intel.com (172.17.3.37) by FMSMSX114.amr.corp.intel.com (10.18.116.8) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 19 Dec 2019 17:45:30 -0800 Received: from cdsmsx102.ccr.corp.intel.com ([169.254.2.36]) by CDSMSX103.ccr.corp.intel.com ([169.254.5.8]) with mapi id 14.03.0439.000; Fri, 20 Dec 2019 09:45:28 +0800 From: "Zhang, AlvinX" To: "luca.boccassi@gmail.com" CC: "Ye, Xiaolong" , dpdk stable Thread-Topic: patch 'net/i40e: fix exception with multi-driver' has been queued to LTS release 17.11.10 Thread-Index: AQHVtnn9YgiwNPU3dE2o9a/xZoyTnqfCPBBQ Date: Fri, 20 Dec 2019 01:45:27 +0000 Message-ID: <6CE17E955B70FA409286764E3E0B3641127F3174@CDSMSX102.ccr.corp.intel.com> References: <20191219143447.21506-1-luca.boccassi@gmail.com> <20191219143447.21506-83-luca.boccassi@gmail.com> In-Reply-To: <20191219143447.21506-83-luca.boccassi@gmail.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.17.6.105] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailman-Approved-At: Fri, 03 Jan 2020 11:49:41 +0100 Subject: Re: [dpdk-stable] patch 'net/i40e: fix exception with multi-driver' has been queued to LTS release 17.11.10 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, This patch does not need to be integrated into version 17.11, it only vali= d for versions 18.02 and later. BR, Alvin > -----Original Message----- > From: luca.boccassi@gmail.com [mailto:luca.boccassi@gmail.com] > Sent: Thursday, December 19, 2019 10:34 PM > To: Zhang, AlvinX > Cc: Ye, Xiaolong ; dpdk stable > Subject: patch 'net/i40e: fix exception with multi-driver' has been queue= d to > LTS release 17.11.10 >=20 > Hi, >=20 > FYI, your patch has been queued to LTS release 17.11.10 >=20 > Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. > It will be pushed if I get no objections before 12/21/19. So please shout= if > anyone has objections. >=20 > Also note that after the patch there's a diff of the upstream commit vs t= he > patch applied to the branch. This will indicate if there was any rebasing > needed to apply to the stable branch. If there were code changes for > rebasing > (ie: not only metadata diffs), please double check that the rebase was > correctly done. >=20 > Thanks. >=20 > Luca Boccassi >=20 > --- > From 97d3af2037014e15165aaf5fafe5c24ab61d7805 Mon Sep 17 00:00:00 2001 > From: Alvin Zhang > Date: Tue, 8 Oct 2019 18:52:31 +0800 > Subject: [PATCH] net/i40e: fix exception with multi-driver >=20 > [ upstream commit 39de80b267e05d6f3322044e5851306acc84f892 ] >=20 > If support-multi-driver is enabled, the global registers should not be > configured. But with the current code base, if creating a flow with rte_f= low > API, the global register GLQF_FD_MSK may be changed. >=20 > Fixes: cfdfca493cae ("net/i40e: fix multiple driver support") >=20 > Signed-off-by: Alvin Zhang > Reviewed-by: Xiaolong Ye > --- > drivers/net/i40e/i40e_flow.c | 38 +++++++++++++++++++++++++++++----- > -- > 1 file changed, 31 insertions(+), 7 deletions(-) >=20 > diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c > index 4ebf925a68..4fa099481a 100644 > --- a/drivers/net/i40e/i40e_flow.c > +++ b/drivers/net/i40e/i40e_flow.c > @@ -2366,6 +2366,37 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, > if (num < 0) > return -EINVAL; >=20 > + if (pf->support_multi_driver) { > + for (i =3D 0; i < num; i++) > + if (i40e_read_rx_ctl(hw, > + I40E_GLQF_FD_MSK(i, pctype)) !=3D > + mask_reg[i]) { > + PMD_DRV_LOG(ERR, "Input set setting is > not" > + " supported with" > + " `support-multi-driver`" > + " enabled!"); > + return -EPERM; > + } > + for (i =3D num; i < I40E_INSET_MASK_NUM_REG; i++) > + if (i40e_read_rx_ctl(hw, > + I40E_GLQF_FD_MSK(i, pctype)) !=3D 0) > { > + PMD_DRV_LOG(ERR, "Input set setting is > not" > + " supported with" > + " `support-multi-driver`" > + " enabled!"); > + return -EPERM; > + } > + > + } else { > + for (i =3D 0; i < num; i++) > + i40e_check_write_reg(hw, I40E_GLQF_FD_MSK(i, > pctype), > + mask_reg[i]); > + /*clear unused mask registers of the pctype */ > + for (i =3D num; i < I40E_INSET_MASK_NUM_REG; i++) > + i40e_check_write_reg(hw, > + I40E_GLQF_FD_MSK(i, pctype), 0); > + } > + > inset_reg |=3D i40e_translate_input_set_reg(hw->mac.type, > input_set); >=20 > i40e_check_write_reg(hw, I40E_PRTQF_FD_INSET(pctype, 0), @@ - > 2374,13 +2405,6 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, > (uint32_t)((inset_reg >> > I40E_32_BIT_WIDTH) & > UINT32_MAX)); >=20 > - for (i =3D 0; i < num; i++) > - i40e_check_write_reg(hw, I40E_GLQF_FD_MSK(i, pctype), > - mask_reg[i]); > - > - /*clear unused mask registers of the pctype */ > - for (i =3D num; i < I40E_INSET_MASK_NUM_REG; i++) > - i40e_check_write_reg(hw, I40E_GLQF_FD_MSK(i, pctype), 0); > I40E_WRITE_FLUSH(hw); >=20 > pf->fdir.input_set[pctype] =3D input_set; > -- > 2.20.1 >=20 > --- > Diff of the applied patch vs upstream commit (please double-check if no= n- > empty: > --- > --- - 2019-12-19 14:32:29.667640280 +0000 > +++ 0083-net-i40e-fix-exception-with-multi-driver.patch 2019-12-19 > 14:32:26.201299729 +0000 > @@ -1,14 +1,15 @@ > -From 39de80b267e05d6f3322044e5851306acc84f892 Mon Sep 17 00:00:00 > 2001 > +From 97d3af2037014e15165aaf5fafe5c24ab61d7805 Mon Sep 17 00:00:00 > 2001 > From: Alvin Zhang > Date: Tue, 8 Oct 2019 18:52:31 +0800 > Subject: [PATCH] net/i40e: fix exception with multi-driver >=20 > +[ upstream commit 39de80b267e05d6f3322044e5851306acc84f892 ] > + > If support-multi-driver is enabled, the global registers should not be > configured. But with the current code base, if creating a flow with rte_= flow > API, the global register GLQF_FD_MSK may be changed. >=20 > Fixes: cfdfca493cae ("net/i40e: fix multiple driver support") > -Cc: stable@dpdk.org >=20 > Signed-off-by: Alvin Zhang > Reviewed-by: Xiaolong Ye @@ -17,10 +18,10 @@ > 1 file changed, 31 insertions(+), 7 deletions(-) >=20 > diff --git a/drivers/net/i40e/i40e_flow.c b/drivers/net/i40e/i40e_flow.c= - > index 9e038fa48f..61021037c8 100644 > +index 4ebf925a68..4fa099481a 100644 > --- a/drivers/net/i40e/i40e_flow.c > +++ b/drivers/net/i40e/i40e_flow.c > -@@ -2349,6 +2349,37 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, > +@@ -2366,6 +2366,37 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, > if (num < 0) > return -EINVAL; >=20 > @@ -58,7 +59,7 @@ > inset_reg |=3D i40e_translate_input_set_reg(hw->mac.type, > input_set); >=20 > i40e_check_write_reg(hw, I40E_PRTQF_FD_INSET(pctype, 0), -@@ - > 2357,13 +2388,6 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, > +@@ -2374,13 +2405,6 @@ i40e_flow_set_fdir_inset(struct i40e_pf *pf, > (uint32_t)((inset_reg >> > I40E_32_BIT_WIDTH) & > UINT32_MAX)); >=20