aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/at76c50x-usb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/at76c50x-usb.c')
-rw-r--r--drivers/net/wireless/at76c50x-usb.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/wireless/at76c50x-usb.c b/drivers/net/wireless/at76c50x-usb.c
index 1476314afa8a..298601436ee2 100644
--- a/drivers/net/wireless/at76c50x-usb.c
+++ b/drivers/net/wireless/at76c50x-usb.c
@@ -1728,7 +1728,7 @@ static void at76_mac80211_tx_callback(struct urb *urb)
1728 ieee80211_wake_queues(priv->hw); 1728 ieee80211_wake_queues(priv->hw);
1729} 1729}
1730 1730
1731static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb) 1731static void at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
1732{ 1732{
1733 struct at76_priv *priv = hw->priv; 1733 struct at76_priv *priv = hw->priv;
1734 struct at76_tx_buffer *tx_buffer = priv->bulk_out_buffer; 1734 struct at76_tx_buffer *tx_buffer = priv->bulk_out_buffer;
@@ -1741,7 +1741,8 @@ static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
1741 if (priv->tx_urb->status == -EINPROGRESS) { 1741 if (priv->tx_urb->status == -EINPROGRESS) {
1742 wiphy_err(priv->hw->wiphy, 1742 wiphy_err(priv->hw->wiphy,
1743 "%s called while tx urb is pending\n", __func__); 1743 "%s called while tx urb is pending\n", __func__);
1744 return NETDEV_TX_BUSY; 1744 dev_kfree_skb_any(skb);
1745 return;
1745 } 1746 }
1746 1747
1747 /* The following code lines are important when the device is going to 1748 /* The following code lines are important when the device is going to
@@ -1755,7 +1756,8 @@ static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
1755 if (compare_ether_addr(priv->bssid, mgmt->bssid)) { 1756 if (compare_ether_addr(priv->bssid, mgmt->bssid)) {
1756 memcpy(priv->bssid, mgmt->bssid, ETH_ALEN); 1757 memcpy(priv->bssid, mgmt->bssid, ETH_ALEN);
1757 ieee80211_queue_work(hw, &priv->work_join_bssid); 1758 ieee80211_queue_work(hw, &priv->work_join_bssid);
1758 return NETDEV_TX_BUSY; 1759 dev_kfree_skb_any(skb);
1760 return;
1759 } 1761 }
1760 } 1762 }
1761 1763
@@ -1795,8 +1797,6 @@ static int at76_mac80211_tx(struct ieee80211_hw *hw, struct sk_buff *skb)
1795 priv->tx_urb, 1797 priv->tx_urb,
1796 priv->tx_urb->hcpriv, priv->tx_urb->complete); 1798 priv->tx_urb->hcpriv, priv->tx_urb->complete);
1797 } 1799 }
1798
1799 return 0;
1800} 1800}
1801 1801
1802static int at76_mac80211_start(struct ieee80211_hw *hw) 1802static int at76_mac80211_start(struct ieee80211_hw *hw)