aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/subsys
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2020-03-13 14:07:23 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2020-03-29 18:22:10 +0200
commitf0aff72c2bfae884b5482a288a191cc33a37f66b (patch)
treed5c0efca95fd641e3d523d25307103593de57114 /package/kernel/mac80211/patches/subsys
parent94949801dec54892046f76e913273df529783cc1 (diff)
downloadupstream-f0aff72c2bfae884b5482a288a191cc33a37f66b.tar.gz
upstream-f0aff72c2bfae884b5482a288a191cc33a37f66b.tar.bz2
upstream-f0aff72c2bfae884b5482a288a191cc33a37f66b.zip
mac80211: Update to version 5.4.27
The removed patches are all integrated in the upstream version now. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/kernel/mac80211/patches/subsys')
-rw-r--r--package/kernel/mac80211/patches/subsys/140-tweak-TSQ-setting.patch2
-rw-r--r--package/kernel/mac80211/patches/subsys/300-mac80211-optimize-skb-resizing.patch6
-rw-r--r--package/kernel/mac80211/patches/subsys/305-mac80211-fix-tx-status-for-no-ack-cases.patch4
-rw-r--r--package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch4
-rw-r--r--package/kernel/mac80211/patches/subsys/307-mac80211-Shrink-the-size-of-ack_frame_id-to-make-roo.patch4
-rw-r--r--package/kernel/mac80211/patches/subsys/308-mac80211-Add-new-sta_info-getter-by-sta-vif-addrs.patch2
-rw-r--r--package/kernel/mac80211/patches/subsys/310-mac80211-Implement-Airtime-based-Queue-Limit-AQL.patch6
-rw-r--r--package/kernel/mac80211/patches/subsys/311-mac80211-Use-Airtime-based-Queue-Limits-AQL-on-packe.patch4
-rw-r--r--package/kernel/mac80211/patches/subsys/313-mac80211-Turn-AQL-into-an-NL80211_EXT_FEATURE.patch6
-rw-r--r--package/kernel/mac80211/patches/subsys/350-cfg80211-fix-memory-leak-in-nl80211_probe_mesh_link.patch22
-rw-r--r--package/kernel/mac80211/patches/subsys/351-cfg80211-fix-memory-leak-in-cfg80211_cqm_rssi_update.patch21
-rw-r--r--package/kernel/mac80211/patches/subsys/352-cfg80211-fix-page-refcount-issue-in-A-MSDU-decap.patch25
-rw-r--r--package/kernel/mac80211/patches/subsys/353-mac80211-use-more-bits-for-ack_frame_id.patch4
-rw-r--r--package/kernel/mac80211/patches/subsys/354-mac80211-fix-overwriting-of-qos_ctrl.tid-field.patch45
-rw-r--r--package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch8
15 files changed, 25 insertions, 138 deletions
diff --git a/package/kernel/mac80211/patches/subsys/140-tweak-TSQ-setting.patch b/package/kernel/mac80211/patches/subsys/140-tweak-TSQ-setting.patch
index e56b08d0fe..64a92a16f6 100644
--- a/package/kernel/mac80211/patches/subsys/140-tweak-TSQ-setting.patch
+++ b/package/kernel/mac80211/patches/subsys/140-tweak-TSQ-setting.patch
@@ -1,6 +1,6 @@
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -4015,6 +4015,12 @@ out:
+@@ -4024,6 +4024,12 @@ out:
netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
struct net_device *dev)
{
diff --git a/package/kernel/mac80211/patches/subsys/300-mac80211-optimize-skb-resizing.patch b/package/kernel/mac80211/patches/subsys/300-mac80211-optimize-skb-resizing.patch
index f4b7e8a1c3..3847b19547 100644
--- a/package/kernel/mac80211/patches/subsys/300-mac80211-optimize-skb-resizing.patch
+++ b/package/kernel/mac80211/patches/subsys/300-mac80211-optimize-skb-resizing.patch
@@ -143,7 +143,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
ieee80211_free_txskb(&local->hw, skb);
return;
}
-@@ -2775,29 +2781,13 @@ static struct sk_buff *ieee80211_build_h
+@@ -2784,29 +2790,13 @@ static struct sk_buff *ieee80211_build_h
}
skb_pull(skb, skip_header_bytes);
@@ -179,7 +179,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
}
if (encaps_data)
-@@ -3412,7 +3402,6 @@ static bool ieee80211_xmit_fast(struct i
+@@ -3421,7 +3411,6 @@ static bool ieee80211_xmit_fast(struct i
struct ieee80211_local *local = sdata->local;
u16 ethertype = (skb->data[12] << 8) | skb->data[13];
int extra_head = fast_tx->hdr_len - (ETH_HLEN - 2);
@@ -187,7 +187,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
struct ethhdr eth;
struct ieee80211_tx_info *info;
struct ieee80211_hdr *hdr = (void *)fast_tx->hdr;
-@@ -3464,10 +3453,7 @@ static bool ieee80211_xmit_fast(struct i
+@@ -3473,10 +3462,7 @@ static bool ieee80211_xmit_fast(struct i
* as the may-encrypt argument for the resize to not account for
* more room than we already have in 'extra_head'
*/
diff --git a/package/kernel/mac80211/patches/subsys/305-mac80211-fix-tx-status-for-no-ack-cases.patch b/package/kernel/mac80211/patches/subsys/305-mac80211-fix-tx-status-for-no-ack-cases.patch
index 3ea78fb4ab..ee8f5d0277 100644
--- a/package/kernel/mac80211/patches/subsys/305-mac80211-fix-tx-status-for-no-ack-cases.patch
+++ b/package/kernel/mac80211/patches/subsys/305-mac80211-fix-tx-status-for-no-ack-cases.patch
@@ -62,7 +62,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
} else {
ieee80211_lost_packet(sta, info);
}
-@@ -1127,7 +1132,7 @@ void ieee80211_tx_status_ext(struct ieee
+@@ -1128,7 +1133,7 @@ void ieee80211_tx_status_ext(struct ieee
sta = container_of(pubsta, struct sta_info, sta);
@@ -71,7 +71,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
sta->status_stats.retry_failed++;
sta->status_stats.retry_count += retry_count;
-@@ -1142,6 +1147,8 @@ void ieee80211_tx_status_ext(struct ieee
+@@ -1143,6 +1148,8 @@ void ieee80211_tx_status_ext(struct ieee
sta->status_stats.last_tdls_pkt_time = jiffies;
} else if (test_sta_flag(sta, WLAN_STA_PS_STA)) {
return;
diff --git a/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch b/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
index 3289aae151..72e3d842d2 100644
--- a/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
+++ b/package/kernel/mac80211/patches/subsys/306-mac80211-move-store-skb-ack-code-to-its-own-function.patch
@@ -13,7 +13,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -2430,6 +2430,33 @@ static int ieee80211_lookup_ra_sta(struc
+@@ -2439,6 +2439,33 @@ static int ieee80211_lookup_ra_sta(struc
return 0;
}
@@ -47,7 +47,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
/**
* ieee80211_build_hdr - build 802.11 header in the given frame
* @sdata: virtual interface to build the header for
-@@ -2723,26 +2750,8 @@ static struct sk_buff *ieee80211_build_h
+@@ -2732,26 +2759,8 @@ static struct sk_buff *ieee80211_build_h
}
if (unlikely(!multicast && skb->sk &&
diff --git a/package/kernel/mac80211/patches/subsys/307-mac80211-Shrink-the-size-of-ack_frame_id-to-make-roo.patch b/package/kernel/mac80211/patches/subsys/307-mac80211-Shrink-the-size-of-ack_frame_id-to-make-roo.patch
index 8b3e666731..9fe2a924df 100644
--- a/package/kernel/mac80211/patches/subsys/307-mac80211-Shrink-the-size-of-ack_frame_id-to-make-roo.patch
+++ b/package/kernel/mac80211/patches/subsys/307-mac80211-Shrink-the-size-of-ack_frame_id-to-make-roo.patch
@@ -45,7 +45,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
struct {
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
-@@ -3427,7 +3427,7 @@ int ieee80211_attach_ack_skb(struct ieee
+@@ -3449,7 +3449,7 @@ int ieee80211_attach_ack_skb(struct ieee
spin_lock_irqsave(&local->ack_status_lock, spin_flags);
id = idr_alloc(&local->ack_status_frames, ack_skb,
@@ -56,7 +56,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
if (id < 0) {
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -2443,7 +2443,7 @@ static int ieee80211_store_ack_skb(struc
+@@ -2452,7 +2452,7 @@ static int ieee80211_store_ack_skb(struc
spin_lock_irqsave(&local->ack_status_lock, flags);
id = idr_alloc(&local->ack_status_frames, ack_skb,
diff --git a/package/kernel/mac80211/patches/subsys/308-mac80211-Add-new-sta_info-getter-by-sta-vif-addrs.patch b/package/kernel/mac80211/patches/subsys/308-mac80211-Add-new-sta_info-getter-by-sta-vif-addrs.patch
index 2c4b978230..75558faac7 100644
--- a/package/kernel/mac80211/patches/subsys/308-mac80211-Add-new-sta_info-getter-by-sta-vif-addrs.patch
+++ b/package/kernel/mac80211/patches/subsys/308-mac80211-Add-new-sta_info-getter-by-sta-vif-addrs.patch
@@ -54,7 +54,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
sta_info_hash_lookup(local, _addr), hash_node)
--- a/net/mac80211/status.c
+++ b/net/mac80211/status.c
-@@ -1085,19 +1085,13 @@ void ieee80211_tx_status(struct ieee8021
+@@ -1086,19 +1086,13 @@ void ieee80211_tx_status(struct ieee8021
.skb = skb,
.info = IEEE80211_SKB_CB(skb),
};
diff --git a/package/kernel/mac80211/patches/subsys/310-mac80211-Implement-Airtime-based-Queue-Limit-AQL.patch b/package/kernel/mac80211/patches/subsys/310-mac80211-Implement-Airtime-based-Queue-Limit-AQL.patch
index 4eb5eb63a2..690d57cb12 100644
--- a/package/kernel/mac80211/patches/subsys/310-mac80211-Implement-Airtime-based-Queue-Limit-AQL.patch
+++ b/package/kernel/mac80211/patches/subsys/310-mac80211-Implement-Airtime-based-Queue-Limit-AQL.patch
@@ -367,7 +367,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
/**
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -3667,7 +3667,8 @@ struct ieee80211_txq *ieee80211_next_txq
+@@ -3676,7 +3676,8 @@ struct ieee80211_txq *ieee80211_next_txq
{
struct ieee80211_local *local = hw_to_local(hw);
struct ieee80211_txq *ret = NULL;
@@ -377,7 +377,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
spin_lock_bh(&local->active_txq_lock[ac]);
-@@ -3678,13 +3679,30 @@ struct ieee80211_txq *ieee80211_next_txq
+@@ -3687,13 +3688,30 @@ struct ieee80211_txq *ieee80211_next_txq
if (!txqi)
goto out;
@@ -410,7 +410,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
list_move_tail(&txqi->schedule_order,
&local->active_txqs[txqi->txq.ac]);
goto begin;
-@@ -3738,6 +3756,33 @@ void __ieee80211_schedule_txq(struct iee
+@@ -3747,6 +3765,33 @@ void __ieee80211_schedule_txq(struct iee
}
EXPORT_SYMBOL(__ieee80211_schedule_txq);
diff --git a/package/kernel/mac80211/patches/subsys/311-mac80211-Use-Airtime-based-Queue-Limits-AQL-on-packe.patch b/package/kernel/mac80211/patches/subsys/311-mac80211-Use-Airtime-based-Queue-Limits-AQL-on-packe.patch
index 3069d624f5..103fc4fd52 100644
--- a/package/kernel/mac80211/patches/subsys/311-mac80211-Use-Airtime-based-Queue-Limits-AQL-on-packe.patch
+++ b/package/kernel/mac80211/patches/subsys/311-mac80211-Use-Airtime-based-Queue-Limits-AQL-on-packe.patch
@@ -112,7 +112,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
if (sta->status_stats.lost_packets)
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -3544,6 +3544,9 @@ struct sk_buff *ieee80211_tx_dequeue(str
+@@ -3553,6 +3553,9 @@ struct sk_buff *ieee80211_tx_dequeue(str
WARN_ON_ONCE(softirq_count() == 0);
@@ -122,7 +122,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
begin:
spin_lock_bh(&fq->lock);
-@@ -3654,6 +3657,21 @@ begin:
+@@ -3663,6 +3666,21 @@ begin:
}
IEEE80211_SKB_CB(skb)->control.vif = vif;
diff --git a/package/kernel/mac80211/patches/subsys/313-mac80211-Turn-AQL-into-an-NL80211_EXT_FEATURE.patch b/package/kernel/mac80211/patches/subsys/313-mac80211-Turn-AQL-into-an-NL80211_EXT_FEATURE.patch
index 3803b37922..9129560f24 100644
--- a/package/kernel/mac80211/patches/subsys/313-mac80211-Turn-AQL-into-an-NL80211_EXT_FEATURE.patch
+++ b/package/kernel/mac80211/patches/subsys/313-mac80211-Turn-AQL-into-an-NL80211_EXT_FEATURE.patch
@@ -32,7 +32,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
-@@ -8868,6 +8868,7 @@ int ath10k_mac_register(struct ath10k *a
+@@ -8870,6 +8870,7 @@ int ath10k_mac_register(struct ath10k *a
wiphy_ext_feature_set(ar->hw->wiphy, NL80211_EXT_FEATURE_VHT_IBSS);
wiphy_ext_feature_set(ar->hw->wiphy,
NL80211_EXT_FEATURE_SET_SCAN_DWELL);
@@ -233,7 +233,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
u64 rx_airtime;
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -3658,7 +3658,7 @@ begin:
+@@ -3667,7 +3667,7 @@ begin:
IEEE80211_SKB_CB(skb)->control.vif = vif;
@@ -242,7 +242,7 @@ Signed-off-by: Johannes Berg <johannes.berg@intel.com>
u32 airtime;
airtime = ieee80211_calc_expected_tx_airtime(hw, vif, txq->sta,
-@@ -3780,7 +3780,7 @@ bool ieee80211_txq_airtime_check(struct
+@@ -3789,7 +3789,7 @@ bool ieee80211_txq_airtime_check(struct
struct sta_info *sta;
struct ieee80211_local *local = hw_to_local(hw);
diff --git a/package/kernel/mac80211/patches/subsys/350-cfg80211-fix-memory-leak-in-nl80211_probe_mesh_link.patch b/package/kernel/mac80211/patches/subsys/350-cfg80211-fix-memory-leak-in-nl80211_probe_mesh_link.patch
deleted file mode 100644
index aea1c89dce..0000000000
--- a/package/kernel/mac80211/patches/subsys/350-cfg80211-fix-memory-leak-in-nl80211_probe_mesh_link.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Wed, 8 Jan 2020 18:00:41 +0100
-Subject: [PATCH] cfg80211: fix memory leak in nl80211_probe_mesh_link
-
-The per-tid statistics need to be released after the call to rdev_get_station
-
-Cc: stable@vger.kernel.org
-Fixes: 5ab92e7fe49a ("cfg80211: add support to probe unexercised mesh link")
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
-
---- a/net/wireless/nl80211.c
-+++ b/net/wireless/nl80211.c
-@@ -13808,6 +13808,8 @@ static int nl80211_probe_mesh_link(struc
- if (err)
- return err;
-
-+ cfg80211_sinfo_release_content(&sinfo);
-+
- return rdev_probe_mesh_link(rdev, dev, dest, buf, len);
- }
-
diff --git a/package/kernel/mac80211/patches/subsys/351-cfg80211-fix-memory-leak-in-cfg80211_cqm_rssi_update.patch b/package/kernel/mac80211/patches/subsys/351-cfg80211-fix-memory-leak-in-cfg80211_cqm_rssi_update.patch
deleted file mode 100644
index 77f5f8b306..0000000000
--- a/package/kernel/mac80211/patches/subsys/351-cfg80211-fix-memory-leak-in-cfg80211_cqm_rssi_update.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Wed, 8 Jan 2020 18:03:04 +0100
-Subject: [PATCH] cfg80211: fix memory leak in cfg80211_cqm_rssi_update
-
-The per-tid statistics need to be released after the call to rdev_get_station
-
-Cc: stable@vger.kernel.org
-Fixes: 8689c051a201 ("cfg80211: dynamically allocate per-tid stats for station info")
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
-
---- a/net/wireless/nl80211.c
-+++ b/net/wireless/nl80211.c
-@@ -10847,6 +10847,7 @@ static int cfg80211_cqm_rssi_update(stru
- if (err)
- return err;
-
-+ cfg80211_sinfo_release_content(&sinfo);
- if (sinfo.filled & BIT_ULL(NL80211_STA_INFO_BEACON_SIGNAL_AVG))
- wdev->cqm_config->last_rssi_event_value =
- (s8) sinfo.rx_beacon_signal_avg;
diff --git a/package/kernel/mac80211/patches/subsys/352-cfg80211-fix-page-refcount-issue-in-A-MSDU-decap.patch b/package/kernel/mac80211/patches/subsys/352-cfg80211-fix-page-refcount-issue-in-A-MSDU-decap.patch
deleted file mode 100644
index b7a291cc46..0000000000
--- a/package/kernel/mac80211/patches/subsys/352-cfg80211-fix-page-refcount-issue-in-A-MSDU-decap.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Mon, 13 Jan 2020 18:34:31 +0100
-Subject: [PATCH] cfg80211: fix page refcount issue in A-MSDU decap
-
-The fragments attached to a skb can be part of a compound page. In that case,
-page_ref_inc will increment the refcount for the wrong page. Fix this by
-using get_page instead, which calls page_ref_inc on the compound head and
-also checks for overflow.
-
-Fixes: 2b67f944f88c ("cfg80211: reuse existing page fragments in A-MSDU rx")
-Cc: stable@vger.kernel.org
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
-
---- a/net/wireless/util.c
-+++ b/net/wireless/util.c
-@@ -564,7 +564,7 @@ __frame_add_frag(struct sk_buff *skb, st
- struct skb_shared_info *sh = skb_shinfo(skb);
- int page_offset;
-
-- page_ref_inc(page);
-+ get_page(page);
- page_offset = ptr - page_address(page);
- skb_add_rx_frag(skb, sh->nr_frags, page, page_offset, len, size);
- }
diff --git a/package/kernel/mac80211/patches/subsys/353-mac80211-use-more-bits-for-ack_frame_id.patch b/package/kernel/mac80211/patches/subsys/353-mac80211-use-more-bits-for-ack_frame_id.patch
index ea9168e9be..1511525aa4 100644
--- a/package/kernel/mac80211/patches/subsys/353-mac80211-use-more-bits-for-ack_frame_id.patch
+++ b/package/kernel/mac80211/patches/subsys/353-mac80211-use-more-bits-for-ack_frame_id.patch
@@ -48,7 +48,7 @@ Acked-by: Toke Høiland-Jørgensen <toke@redhat.com>
struct {
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
-@@ -3427,7 +3427,7 @@ int ieee80211_attach_ack_skb(struct ieee
+@@ -3449,7 +3449,7 @@ int ieee80211_attach_ack_skb(struct ieee
spin_lock_irqsave(&local->ack_status_lock, spin_flags);
id = idr_alloc(&local->ack_status_frames, ack_skb,
@@ -59,7 +59,7 @@ Acked-by: Toke Høiland-Jørgensen <toke@redhat.com>
if (id < 0) {
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -2443,7 +2443,7 @@ static int ieee80211_store_ack_skb(struc
+@@ -2452,7 +2452,7 @@ static int ieee80211_store_ack_skb(struc
spin_lock_irqsave(&local->ack_status_lock, flags);
id = idr_alloc(&local->ack_status_frames, ack_skb,
diff --git a/package/kernel/mac80211/patches/subsys/354-mac80211-fix-overwriting-of-qos_ctrl.tid-field.patch b/package/kernel/mac80211/patches/subsys/354-mac80211-fix-overwriting-of-qos_ctrl.tid-field.patch
deleted file mode 100644
index 02d2581106..0000000000
--- a/package/kernel/mac80211/patches/subsys/354-mac80211-fix-overwriting-of-qos_ctrl.tid-field.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-commit 753ffad3d6243303994227854d951ff5c70fa9e0
-Author: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
-Date: Tue Nov 19 14:34:51 2019 +0100
-
- mac80211: fix TID field in monitor mode transmit
-
- Fix overwriting of the qos_ctrl.tid field for encrypted frames injected on
- a monitor interface. While qos_ctrl.tid is not encrypted, it's used as an
- input into the encryption algorithm so it's protected, and thus cannot be
- modified after encryption. For injected frames, the encryption may already
- have been done in userspace, so we cannot change any fields.
-
- Before passing the frame to the driver, the qos_ctrl.tid field is updated
- from skb->priority. Prior to dbd50a851c50 skb->priority was updated in
- ieee80211_select_queue_80211(), but this function is no longer always
- called.
-
- Update skb->priority in ieee80211_monitor_start_xmit() so that the value
- is stored, and when later code 'modifies' the TID it really sets it to
- the same value as before, preserving the encryption.
-
- Fixes: dbd50a851c50 ("mac80211: only allocate one queue when using iTXQs")
- Signed-off-by: Fredrik Olofsson <fredrik.olofsson@anyfinetworks.com>
- Link: https://lore.kernel.org/r/20191119133451.14711-1-fredrik.olofsson@anyfinetworks.com
- [rewrite commit message based on our discussion]
- Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-
---- a/net/mac80211/tx.c
-+++ b/net/mac80211/tx.c
-@@ -2269,6 +2269,15 @@ netdev_tx_t ieee80211_monitor_start_xmit
- payload[7]);
- }
-
-+ /*
-+ * Initialize skb->priority for QoS frames. This is put in the TID field
-+ * of the frame before passing it to the driver.
-+ */
-+ if (ieee80211_is_data_qos(hdr->frame_control)) {
-+ u8 *p = ieee80211_get_qos_ctl(hdr);
-+ skb->priority = *p & IEEE80211_QOS_CTL_TAG1D_MASK;
-+ }
-+
- memset(info, 0, sizeof(*info));
-
- info->flags = IEEE80211_TX_CTL_REQ_TX_STATUS |
diff --git a/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch b/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch
index dcdfe20dc8..a32f1b8e4d 100644
--- a/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch
+++ b/package/kernel/mac80211/patches/subsys/500-mac80211_configure_antenna_gain.patch
@@ -8,7 +8,7 @@
*
* @set_wds_peer: set the WDS peer for a WDS interface
*
-@@ -3766,6 +3767,7 @@ struct cfg80211_ops {
+@@ -3769,6 +3770,7 @@ struct cfg80211_ops {
enum nl80211_tx_power_setting type, int mbm);
int (*get_tx_power)(struct wiphy *wiphy, struct wireless_dev *wdev,
int *dbm);
@@ -77,7 +77,7 @@
static int ieee80211_set_wds_peer(struct wiphy *wiphy, struct net_device *dev,
const u8 *addr)
{
-@@ -3995,6 +4008,7 @@ const struct cfg80211_ops mac80211_confi
+@@ -4017,6 +4030,7 @@ const struct cfg80211_ops mac80211_confi
.set_wiphy_params = ieee80211_set_wiphy_params,
.set_tx_power = ieee80211_set_tx_power,
.get_tx_power = ieee80211_get_tx_power,
@@ -129,7 +129,7 @@
local->hw.max_mtu = IEEE80211_MAX_DATA_LEN;
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -624,6 +624,7 @@ const struct nla_policy nl80211_policy[N
+@@ -630,6 +630,7 @@ const struct nla_policy nl80211_policy[N
.len = SAE_PASSWORD_MAX_LEN },
[NL80211_ATTR_TWT_RESPONDER] = { .type = NLA_FLAG },
[NL80211_ATTR_HE_OBSS_PD] = NLA_POLICY_NESTED(he_obss_pd_policy),
@@ -137,7 +137,7 @@
};
/* policy for the key attributes */
-@@ -2988,6 +2989,20 @@ static int nl80211_set_wiphy(struct sk_b
+@@ -2994,6 +2995,20 @@ static int nl80211_set_wiphy(struct sk_b
if (result)
return result;
}