* [PATCH net] cxgb4/cxgb4vf: Fixes regression in perf when tx vlan offload is disabled
@ 2016-07-28 7:58 Hariprasad Shenai
2016-07-31 3:40 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Hariprasad Shenai @ 2016-07-28 7:58 UTC (permalink / raw)
To: netdev; +Cc: davem, leedom, nirranjan, Hariprasad Shenai
The commit 637d3e997351 ("cxgb4: Discard the packet if the length is
greater than mtu") introduced a regression in the VLAN interface
performance when Tx VLAN offload is disabled.
Check if skb is tagged, regardless of whether it is hardware accelerated
or not. Presently we were checking only for hardware acclereated one,
which caused performance to drop to ~0.17Mbps on a 10GbE adapter for
VLAN interface, when tx vlan offload is turned off using ethtool.
The ethernet head length calculation was going wrong in this case, and
driver ended up dropping packets.
Fixes: 637d3e997351 ("cxgb4: Discard the packet if the length is greater than mtu")
Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
---
drivers/net/ethernet/chelsio/cxgb4/sge.c | 2 +-
drivers/net/ethernet/chelsio/cxgb4vf/sge.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/chelsio/cxgb4/sge.c b/drivers/net/ethernet/chelsio/cxgb4/sge.c
index bad253beb8c8..ad3552df0545 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/sge.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/sge.c
@@ -1192,7 +1192,7 @@ out_free: dev_kfree_skb_any(skb);
/* Discard the packet if the length is greater than mtu */
max_pkt_len = ETH_HLEN + dev->mtu;
- if (skb_vlan_tag_present(skb))
+ if (skb_vlan_tagged(skb))
max_pkt_len += VLAN_HLEN;
if (!skb_shinfo(skb)->gso_size && (unlikely(skb->len > max_pkt_len)))
goto out_free;
diff --git a/drivers/net/ethernet/chelsio/cxgb4vf/sge.c b/drivers/net/ethernet/chelsio/cxgb4vf/sge.c
index 1bb57d3fbbe8..c8fd4f8fe1fa 100644
--- a/drivers/net/ethernet/chelsio/cxgb4vf/sge.c
+++ b/drivers/net/ethernet/chelsio/cxgb4vf/sge.c
@@ -1188,7 +1188,7 @@ int t4vf_eth_xmit(struct sk_buff *skb, struct net_device *dev)
/* Discard the packet if the length is greater than mtu */
max_pkt_len = ETH_HLEN + dev->mtu;
- if (skb_vlan_tag_present(skb))
+ if (skb_vlan_tagged(skb))
max_pkt_len += VLAN_HLEN;
if (!skb_shinfo(skb)->gso_size && (unlikely(skb->len > max_pkt_len)))
goto out_free;
--
2.3.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH net] cxgb4/cxgb4vf: Fixes regression in perf when tx vlan offload is disabled
2016-07-28 7:58 [PATCH net] cxgb4/cxgb4vf: Fixes regression in perf when tx vlan offload is disabled Hariprasad Shenai
@ 2016-07-31 3:40 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2016-07-31 3:40 UTC (permalink / raw)
To: hariprasad; +Cc: netdev, leedom, nirranjan
From: Hariprasad Shenai <hariprasad@chelsio.com>
Date: Thu, 28 Jul 2016 13:28:57 +0530
> The commit 637d3e997351 ("cxgb4: Discard the packet if the length is
> greater than mtu") introduced a regression in the VLAN interface
> performance when Tx VLAN offload is disabled.
>
> Check if skb is tagged, regardless of whether it is hardware accelerated
> or not. Presently we were checking only for hardware acclereated one,
> which caused performance to drop to ~0.17Mbps on a 10GbE adapter for
> VLAN interface, when tx vlan offload is turned off using ethtool.
> The ethernet head length calculation was going wrong in this case, and
> driver ended up dropping packets.
>
> Fixes: 637d3e997351 ("cxgb4: Discard the packet if the length is greater than mtu")
>
> Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Applied.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2016-07-31 3:40 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-28 7:58 [PATCH net] cxgb4/cxgb4vf: Fixes regression in perf when tx vlan offload is disabled Hariprasad Shenai
2016-07-31 3:40 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).