summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJohannes Berg2015-11-24 15:38:43 +0100
committerJohannes Berg2015-12-04 14:43:32 +0100
commit86c7ec9eb154020797c39e1cc7dafa92da02f603 (patch)
tree59e4c7712814dd9271b441cc7ae83e144f018582 /net
parentRevert "mac80211: don't advertise NL80211_FEATURE_FULL_AP_CLIENT_STATE" (diff)
downloadkernel-qcow2-linux-86c7ec9eb154020797c39e1cc7dafa92da02f603.tar.gz
kernel-qcow2-linux-86c7ec9eb154020797c39e1cc7dafa92da02f603.tar.xz
kernel-qcow2-linux-86c7ec9eb154020797c39e1cc7dafa92da02f603.zip
mac80211: properly free skb when r-o-c for TX fails
When freeing the TX skb for an off-channel TX, use the correct API to also free the ACK skb that might have been allocated. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net')
-rw-r--r--net/mac80211/cfg.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/cfg.c b/net/mac80211/cfg.c
index 1df92fed74c2..6bcdbab65a8c 100644
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -3474,7 +3474,7 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
params->wait, cookie, skb,
IEEE80211_ROC_TYPE_MGMT_TX);
if (ret)
- kfree_skb(skb);
+ ieee80211_free_txskb(&local->hw, skb);
out_unlock:
mutex_unlock(&local->mtx);
return ret;