From a6f14311c9bc8e4aa78a66c8f2ee91ac345db584 Mon Sep 17 00:00:00 2001 From: Narayan Reddy Date: Thu, 2 Nov 2023 09:09:34 +0000 Subject: [PATCH] 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 Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3008932 Reviewed-by: Bhadram Varka Reviewed-by: Mohan Thadikamalla Reviewed-by: Bitan Biswas Tested-by: Tonny Liang GVS: Gerrit_Virtual_Submit --- drivers/net/ethernet/nvidia/nvethernet/ether_linux.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/nvidia/nvethernet/ether_linux.c b/drivers/net/ethernet/nvidia/nvethernet/ether_linux.c index 2ac25d6d..f9e22bed 100644 --- a/drivers/net/ethernet/nvidia/nvethernet/ether_linux.c +++ b/drivers/net/ethernet/nvidia/nvethernet/ether_linux.c @@ -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; }