diff --git a/core/hdd/src/wlan_hdd_softap_tx_rx.c b/core/hdd/src/wlan_hdd_softap_tx_rx.c index 6626ca211f83..8f98dcf84366 100644 --- a/core/hdd/src/wlan_hdd_softap_tx_rx.c +++ b/core/hdd/src/wlan_hdd_softap_tx_rx.c @@ -288,7 +288,7 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) /* Check if the buffer has enough header room */ skb = skb_unshare(skb, GFP_ATOMIC); if (!skb) - goto drop_pkt; + goto drop_pkt_accounting; if (skb_headroom(skb) < dev->hard_header_len) { struct sk_buff *tmp; @@ -296,7 +296,7 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) skb = skb_realloc_headroom(tmp, dev->hard_header_len); dev_kfree_skb(tmp); if (!skb) - goto drop_pkt; + goto drop_pkt_accounting; } #if defined (IPA_OFFLOAD) } @@ -357,10 +357,11 @@ drop_pkt: DPTRACE(cdf_dp_trace(skb, CDF_DP_TRACE_DROP_PACKET_RECORD, (uint8_t *)&skb->data[CDF_DP_TRACE_RECORD_SIZE], (cdf_nbuf_len(skb)-CDF_DP_TRACE_RECORD_SIZE))); + kfree_skb(skb); +drop_pkt_accounting: ++pAdapter->stats.tx_dropped; ++pAdapter->hdd_stats.hddTxRxStats.txXmitDropped; - kfree_skb(skb); return NETDEV_TX_OK; }