ath6kl: Update netstats for some of the tx failrues in ath6kl_data_tx()
authorVasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Thu, 26 Apr 2012 14:56:13 +0000 (20:26 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Mon, 30 Apr 2012 07:54:52 +0000 (10:54 +0300)
There are few cases where the tx skb is dropped but netstats is
not updated, fix this.

Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath6kl/txrx.c

index 82f2f5c..67206ae 100644 (file)
@@ -362,15 +362,11 @@ int ath6kl_data_tx(struct sk_buff *skb, struct net_device *dev)
                   skb, skb->data, skb->len);
 
        /* If target is not associated */
-       if (!test_bit(CONNECTED, &vif->flags)) {
-               dev_kfree_skb(skb);
-               return 0;
-       }
+       if (!test_bit(CONNECTED, &vif->flags))
+               goto fail_tx;
 
-       if (WARN_ON_ONCE(ar->state != ATH6KL_STATE_ON)) {
-               dev_kfree_skb(skb);
-               return 0;
-       }
+       if (WARN_ON_ONCE(ar->state != ATH6KL_STATE_ON))
+               goto fail_tx;
 
        if (!test_bit(WMI_READY, &ar->flag))
                goto fail_tx;