As recommended by Johannes Berg, rt2x00 shouldn't check for IEEE80211_TXCTL_REQ_TX_STATUS and always pass the frame back to mac80211. Signed-off-by: Ivo van Doorn <IvDoorn@xxxxxxxxx> --- drivers/net/wireless/rt2x00/rt2x00dev.c | 12 +++--------- 1 files changed, 3 insertions(+), 9 deletions(-) diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c index 8c24797..c4086f0 100644 --- a/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c @@ -333,16 +333,10 @@ void rt2x00lib_txdone(struct data_entry *entry, } /* - * Check if mac80211 wants to be updated or not, - * if it wants the update it will cleanup the skb structure, - * else then we should cleanup the skb structure. + * Send the tx_status to mac80211, + * that method also cleans up the skb structure. */ - if (tx_status->control.flags & IEEE80211_TXCTL_REQ_TX_STATUS) - ieee80211_tx_status_irqsafe(rt2x00dev->hw, entry->skb, - tx_status); - else - dev_kfree_skb_any(entry->skb); - + ieee80211_tx_status_irqsafe(rt2x00dev->hw, entry->skb, tx_status); entry->skb = NULL; } EXPORT_SYMBOL_GPL(rt2x00lib_txdone); -- 1.5.3 - To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html