aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammed Javid <mjavid@codeaurora.org>2018-07-25 15:01:38 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2018-07-27 02:28:10 -0700
commitfab936c663197acb5b7c3a20937b2ef6b895113d (patch)
tree0dd43b3436b615d96ed720fc805504e8be25f661
parent4baf194cfe037da2c044da946b1862223f67cc14 (diff)
net: usb: ax88179: Change to check if the packets are coming from gsbLE.UM.2.3.2-02400-SDX24
Packets from gsb are cloned packets, which has been done to optimize the dl data path. The check for cloned skb calls pskb_expand_head which gives penalty in the throughput. GSB driver data path does not consume the skb so, reallocation of skb is not necessary here. For that reason the check for all packets from gsb is introduced here. This check improves the throughput to about 150 Mbps. Change-Id: Ic1d7cc9c94605f1902ba212aac52d535d0ff84a7 Acked-by: Rishav LNU <rna@qti.qualcomm.com> Signed-off-by: Mohammed Javid <mjavid@codeaurora.org>
-rw-r--r--drivers/net/usb/ax88179_178a.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/usb/ax88179_178a.c b/drivers/net/usb/ax88179_178a.c
index 8a6675d92b98..f9f69d536dfe 100644
--- a/drivers/net/usb/ax88179_178a.c
+++ b/drivers/net/usb/ax88179_178a.c
@@ -1435,7 +1435,8 @@ ax88179_tx_fixup(struct usbnet *dev, struct sk_buff *skb, gfp_t flags)
headroom = skb_headroom(skb) - 8;
- if ((skb_header_cloned(skb) || headroom < 0) &&
+ if (((!(skb->fast_forwarded) && skb_header_cloned(skb)) ||
+ headroom < 0) &&
pskb_expand_head(skb, headroom < 0 ? 8 : 0, 0, GFP_ATOMIC)) {
dev_kfree_skb_any(skb);
return NULL;