summaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/570-mac80211_tx_status_crash.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/mac80211/patches/570-mac80211_tx_status_crash.patch')
-rw-r--r--package/mac80211/patches/570-mac80211_tx_status_crash.patch32
1 files changed, 0 insertions, 32 deletions
diff --git a/package/mac80211/patches/570-mac80211_tx_status_crash.patch b/package/mac80211/patches/570-mac80211_tx_status_crash.patch
deleted file mode 100644
index abcf56e1d..000000000
--- a/package/mac80211/patches/570-mac80211_tx_status_crash.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- a/net/mac80211/status.c
-+++ b/net/mac80211/status.c
-@@ -517,6 +517,8 @@ void ieee80211_tx_status(struct ieee8021
-
- if (info->flags & IEEE80211_TX_INTFL_NL80211_FRAME_TX) {
- u64 cookie = (unsigned long)skb;
-+ bool found = false;
-+
- acked = info->flags & IEEE80211_TX_STAT_ACK;
-
- /*
-@@ -524,8 +526,18 @@ void ieee80211_tx_status(struct ieee8021
- * we cannot use skb->dev->ieee80211_ptr
- */
-
-- if (ieee80211_is_nullfunc(hdr->frame_control) ||
-- ieee80211_is_qos_nullfunc(hdr->frame_control))
-+ list_for_each_entry_rcu(sdata, &local->interfaces, list) {
-+ if (skb->dev != sdata->dev)
-+ continue;
-+
-+ found = true;
-+ break;
-+ }
-+
-+ if (!found)
-+ skb->dev = NULL;
-+ else if (ieee80211_is_nullfunc(hdr->frame_control) ||
-+ ieee80211_is_qos_nullfunc(hdr->frame_control))
- cfg80211_probe_status(skb->dev, hdr->addr1,
- cookie, acked, GFP_ATOMIC);
- else