summaryrefslogtreecommitdiff
path: root/patches/collateral-evolutions/network/12-mac80211-disable-tx-status
diff options
context:
space:
mode:
authorJohannes Berg <johannes@sipsolutions.net>2013-03-30 00:53:58 +0100
committerJohannes Berg <johannes@sipsolutions.net>2013-03-30 01:06:36 +0100
commit44706a520f6527c67e7f8b741812f11464babda2 (patch)
treeceba8de9f18d05fea9bb4d337391ed79a2bc7cf4 /patches/collateral-evolutions/network/12-mac80211-disable-tx-status
parent5bf870f42dc0cf3e31522e05119c0a8f993a280e (diff)
split patches
This splits all patches into per-file patches. I've added the little tool I wrote as well (but it's hard to use). Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Diffstat (limited to 'patches/collateral-evolutions/network/12-mac80211-disable-tx-status')
-rw-r--r--patches/collateral-evolutions/network/12-mac80211-disable-tx-status/INFO6
-rw-r--r--patches/collateral-evolutions/network/12-mac80211-disable-tx-status/net_mac80211_tx.c18
2 files changed, 24 insertions, 0 deletions
diff --git a/patches/collateral-evolutions/network/12-mac80211-disable-tx-status/INFO b/patches/collateral-evolutions/network/12-mac80211-disable-tx-status/INFO
new file mode 100644
index 00000000..760ed440
--- /dev/null
+++ b/patches/collateral-evolutions/network/12-mac80211-disable-tx-status/INFO
@@ -0,0 +1,6 @@
+We can't possibly backport the wifi TX status since
+skb_shinfo()->tx_flags used to be a union and there
+is no way to make the & work properly in that case.
+So we need to just ifdef this part out.
+
+
diff --git a/patches/collateral-evolutions/network/12-mac80211-disable-tx-status/net_mac80211_tx.c b/patches/collateral-evolutions/network/12-mac80211-disable-tx-status/net_mac80211_tx.c
new file mode 100644
index 00000000..f5aeb836
--- /dev/null
+++ b/patches/collateral-evolutions/network/12-mac80211-disable-tx-status/net_mac80211_tx.c
@@ -0,0 +1,18 @@
+--- a/net/mac80211/tx.c
++++ b/net/mac80211/tx.c
+@@ -2035,6 +2035,7 @@
+ goto fail_rcu;
+ }
+
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
+ if (unlikely(!multicast && skb->sk &&
+ skb_shinfo(skb)->tx_flags & SKBTX_WIFI_STATUS)) {
+ struct sk_buff *orig_skb = skb;
+@@ -2063,6 +2064,7 @@
+ skb = orig_skb;
+ }
+ }
++#endif
+
+ /*
+ * If the skb is shared we need to obtain our own copy.