nvethernet: Disable NETIF_F_HW_VLAN_CTAG_TX for EQOS

When TSO is enabled with NETIF_F_HW_VLAN_CTAG_TX then VLAN performance
is compromised in the case of EQOS. This is because the hardware fails
to insert a VLAN tag for every segment. To address this issue,
NETIF_F_HW_VLAN_CTAG_TX is temporarily disabled, allowing Network Stack
to handle the insertion of VLAN tags during transmission.

Bug 4290860

Change-Id: Iee24898b5b32d91e19b4eae12c7e076e014d6674
Signed-off-by: Narayan Reddy <narayanr@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3008932
Reviewed-by: Bhadram Varka <vbhadram@nvidia.com>
Reviewed-by: Mohan Thadikamalla <mohant@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Tested-by: Tonny Liang <tonnyl@nvidia.com>
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
Narayan Reddy
2023-11-02 09:09:34 +00:00
committed by mobile promotions
parent 816c428c79
commit a6f14311c9

View File

@@ -6367,7 +6367,7 @@ static void ether_set_ndev_features(struct net_device *ndev,
/* GRO is independent of HW features */
features |= NETIF_F_GRO;
if (pdata->hw_feat.sa_vlan_ins) {
if ((pdata->hw_feat.sa_vlan_ins) && (pdata->osi_core->mac != OSI_MAC_HW_EQOS)) {
features |= NETIF_F_HW_VLAN_CTAG_TX;
}