aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjoern A. Zeeb <bz@FreeBSD.org>2023-09-24 11:55:11 +0000
committerBjoern A. Zeeb <bz@FreeBSD.org>2023-10-04 15:19:19 +0000
commit70e2b1f49c18c8ff5ca81a49abb0bdaa62708766 (patch)
treef6d848ca2fad85fee140fdfb6be81a0d9e9c1885
parent53ef38313a6dd70e5d929a3d014cc62db807793f (diff)
downloadsrc-70e2b1f49c18c8ff5ca81a49abb0bdaa62708766.tar.gz
src-70e2b1f49c18c8ff5ca81a49abb0bdaa62708766.zip
LinuxKPI: 802.11: avoid symbol clash on UP to AC mapping
tid_to_mac80211_ac is an exported symbol in and likely based on iwlwifi, which leads to a symbol clash in NetBSD. Rename our local LinuxKPI copy to a better name and add a comment where to find a copy of the mapping table. Sponsored by: The FreeBSD Foundation Reported by: Phil Nelson (phil netbsd org) (cherry picked from commit fb3c249ed93c834d70f8361215bc40a9e9004d3b)
-rw-r--r--sys/compat/linuxkpi/common/src/linux_80211.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 5e7a3ff91b9f..c8232e6f33cc 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -116,7 +116,8 @@ const uint8_t rfc1042_header[6] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 };
/* IEEE 802.11-05/0257r1 */
const uint8_t bridge_tunnel_header[6] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 };
-const uint8_t tid_to_mac80211_ac[] = {
+/* IEEE 802.11e Table 20i-UP-to-AC mappings. */
+static const uint8_t ieee80211e_up_to_ac[] = {
IEEE80211_AC_BE,
IEEE80211_AC_BK,
IEEE80211_AC_BK,
@@ -242,7 +243,7 @@ lkpi_lsta_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN],
IMPROVE("AP/if we support non-STA here too");
ltxq->txq.ac = IEEE80211_AC_VO;
} else {
- ltxq->txq.ac = tid_to_mac80211_ac[tid & 7];
+ ltxq->txq.ac = ieee80211e_up_to_ac[tid & 7];
}
ltxq->seen_dequeue = false;
ltxq->stopped = false;
@@ -3243,7 +3244,7 @@ lkpi_80211_txq_tx_one(struct lkpi_sta *lsta, struct mbuf *m)
ac = IEEE80211_AC_BE;
} else {
skb->priority = tid & IEEE80211_QOS_CTL_TID_MASK;
- ac = tid_to_mac80211_ac[tid & 7];
+ ac = ieee80211e_up_to_ac[tid & 7];
}
skb_set_queue_mapping(skb, ac);