Message ID | 20210219051346.12992-1-alvinx.zhang@intel.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Qi Zhang |
Headers | show |
Series | net/ice: fix VLAN filter with PF | expand |
Context | Check | Description |
---|---|---|
ci/github-robot | success | github build: passed |
ci/travis-robot | fail | travis build: failed |
ci/iol-testing | success | Testing PASS |
ci/iol-abi-testing | success | Testing PASS |
ci/intel-Testing | success | Testing PASS |
ci/iol-intel-Performance | success | Performance Testing PASS |
ci/Intel-compilation | success | Compilation OK |
ci/iol-broadcom-Performance | success | Performance Testing PASS |
ci/iol-broadcom-Functional | success | Functional Testing PASS |
ci/checkpatch | success | coding style OK |
Tested-by: Huang, ZhiminX <zhiminx.huang@intel.com> Regards, HuangZhiMin > -----Original Message----- > From: dev <dev-bounces@dpdk.org> On Behalf Of Alvin Zhang > Sent: Friday, February 19, 2021 1:14 PM > To: Zhang, Qi Z <qi.z.zhang@intel.com> > Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>; > stable@dpdk.org > Subject: [dpdk-dev] [PATCH] net/ice: fix VLAN filter with PF > > The macro flag DEV_RX_OFFLOAD_VLAN_FILTER is used to enable/disable > Rx VLAN filter, but not Tx VLAN filter. Therefore, Tx VLAN filter should not > be enabled/disabled in function ice_vsi_config_vlan_filter called after > checking DEV_RX_OFFLOAD_VLAN_FILTER flag. > > In addition, the kernel driver doesn't enable/disable the TX VLAN filter in > the similar function ice_cfg_vlan_pruning. > > This patch removes the setting about the TX VLAN filter in function > ice_vsi_config_vlan_filter. > > Fixes: e0dcf94a0d7f ("net/ice: support VLAN ops") > Cc: stable@dpdk.org > > Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com> > --- > drivers/net/ice/ice_ethdev.c | 12 ++++-------- > 1 file changed, 4 insertions(+), 8 deletions(-) > > diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c > index dfd99ac..8999d44 100644 > --- a/drivers/net/ice/ice_ethdev.c > +++ b/drivers/net/ice/ice_ethdev.c > @@ -4011,20 +4011,16 @@ static int ice_macaddr_set(struct > rte_eth_dev *dev, { > struct ice_hw *hw = ICE_VSI_TO_HW(vsi); > struct ice_vsi_ctx ctxt; > - uint8_t sec_flags, sw_flags2; > + uint8_t sw_flags2; > int ret = 0; > > - sec_flags = ICE_AQ_VSI_SEC_TX_VLAN_PRUNE_ENA << > - ICE_AQ_VSI_SEC_TX_PRUNE_ENA_S; > sw_flags2 = ICE_AQ_VSI_SW_FLAG_RX_VLAN_PRUNE_ENA; > > - if (on) { > - vsi->info.sec_flags |= sec_flags; > + if (on) > vsi->info.sw_flags2 |= sw_flags2; > - } else { > - vsi->info.sec_flags &= ~sec_flags; > + else > vsi->info.sw_flags2 &= ~sw_flags2; > - } > + > vsi->info.sw_id = hw->port_info->sw_id; > (void)rte_memcpy(&ctxt.info, &vsi->info, sizeof(vsi->info)); > ctxt.info.valid_sections = > -- > 1.8.3.1
> -----Original Message----- > From: Huang, ZhiminX <zhiminx.huang@intel.com> > Sent: Friday, February 19, 2021 5:06 PM > To: Zhang, AlvinX <alvinx.zhang@intel.com>; Zhang, Qi Z > <qi.z.zhang@intel.com> > Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>; stable@dpdk.org > Subject: RE: [dpdk-dev] [PATCH] net/ice: fix VLAN filter with PF > > Tested-by: Huang, ZhiminX <zhiminx.huang@intel.com> > > Regards, > HuangZhiMin > > > > -----Original Message----- > > From: dev <dev-bounces@dpdk.org> On Behalf Of Alvin Zhang > > Sent: Friday, February 19, 2021 1:14 PM > > To: Zhang, Qi Z <qi.z.zhang@intel.com> > > Cc: dev@dpdk.org; Zhang, AlvinX <alvinx.zhang@intel.com>; > > stable@dpdk.org > > Subject: [dpdk-dev] [PATCH] net/ice: fix VLAN filter with PF > > > > The macro flag DEV_RX_OFFLOAD_VLAN_FILTER is used to enable/disable Rx > > VLAN filter, but not Tx VLAN filter. Therefore, Tx VLAN filter should > > not be enabled/disabled in function ice_vsi_config_vlan_filter called > > after checking DEV_RX_OFFLOAD_VLAN_FILTER flag. > > > > In addition, the kernel driver doesn't enable/disable the TX VLAN > > filter in the similar function ice_cfg_vlan_pruning. > > > > This patch removes the setting about the TX VLAN filter in function > > ice_vsi_config_vlan_filter. > > > > Fixes: e0dcf94a0d7f ("net/ice: support VLAN ops") > > Cc: stable@dpdk.org > > > > Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com> Acked-by: Qi Zhang <qi.z.zhang@intel.com> Applied to dpdk-next-net-intel. Thanks Qi
diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c index dfd99ac..8999d44 100644 --- a/drivers/net/ice/ice_ethdev.c +++ b/drivers/net/ice/ice_ethdev.c @@ -4011,20 +4011,16 @@ static int ice_macaddr_set(struct rte_eth_dev *dev, { struct ice_hw *hw = ICE_VSI_TO_HW(vsi); struct ice_vsi_ctx ctxt; - uint8_t sec_flags, sw_flags2; + uint8_t sw_flags2; int ret = 0; - sec_flags = ICE_AQ_VSI_SEC_TX_VLAN_PRUNE_ENA << - ICE_AQ_VSI_SEC_TX_PRUNE_ENA_S; sw_flags2 = ICE_AQ_VSI_SW_FLAG_RX_VLAN_PRUNE_ENA; - if (on) { - vsi->info.sec_flags |= sec_flags; + if (on) vsi->info.sw_flags2 |= sw_flags2; - } else { - vsi->info.sec_flags &= ~sec_flags; + else vsi->info.sw_flags2 &= ~sw_flags2; - } + vsi->info.sw_id = hw->port_info->sw_id; (void)rte_memcpy(&ctxt.info, &vsi->info, sizeof(vsi->info)); ctxt.info.valid_sections =
The macro flag DEV_RX_OFFLOAD_VLAN_FILTER is used to enable/disable Rx VLAN filter, but not Tx VLAN filter. Therefore, Tx VLAN filter should not be enabled/disabled in function ice_vsi_config_vlan_filter called after checking DEV_RX_OFFLOAD_VLAN_FILTER flag. In addition, the kernel driver doesn't enable/disable the TX VLAN filter in the similar function ice_cfg_vlan_pruning. This patch removes the setting about the TX VLAN filter in function ice_vsi_config_vlan_filter. Fixes: e0dcf94a0d7f ("net/ice: support VLAN ops") Cc: stable@dpdk.org Signed-off-by: Alvin Zhang <alvinx.zhang@intel.com> --- drivers/net/ice/ice_ethdev.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)