git: b1a57b105ce6 - stable/13 - net80211: simplify an #ifdef INET/INET6 block
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 21 Sep 2022 14:01:32 UTC
The branch stable/13 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b1a57b105ce6d65706a2535ce7ffa2b1ebef630e commit b1a57b105ce6d65706a2535ce7ffa2b1ebef630e Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2022-08-31 22:35:42 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2022-09-21 11:46:46 +0000 net80211: simplify an #ifdef INET/INET6 block I got lost in the #ifdef #endif here so I changed the code to a switch block with two non-overlapping #ifdef parts and a default which makes it a lot easier to read. No functional changes. Sponsored by: The FreeBSD Foundation Reviewed by: (zlei.huang gmail.com) Differential Revision: https://reviews.freebsd.org/D36411 (cherry picked from commit 8def06d5afdcd8020a039b1de994cfe6ad18229e) --- sys/net80211/ieee80211_output.c | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/sys/net80211/ieee80211_output.c b/sys/net80211/ieee80211_output.c index 4cc76e8d09da..35f386eda27f 100644 --- a/sys/net80211/ieee80211_output.c +++ b/sys/net80211/ieee80211_output.c @@ -1269,9 +1269,14 @@ ieee80211_classify(struct ieee80211_node *ni, struct mbuf *m) v_wme_ac = TID_TO_WME_AC(EVL_PRIOFTAG(ni->ni_vlan)); } + if (eh == NULL) + goto no_eh; + /* XXX m_copydata may be too slow for fast path */ + switch (ntohs(eh->ether_type)) { #ifdef INET - if (eh && eh->ether_type == htons(ETHERTYPE_IP)) { + case ETHERTYPE_IP: + { uint8_t tos; /* * IP frame, map the DSCP bits from the TOS field. @@ -1281,10 +1286,12 @@ ieee80211_classify(struct ieee80211_node *ni, struct mbuf *m) offsetof(struct ip, ip_tos), sizeof(tos), &tos); tos >>= 5; /* NB: ECN + low 3 bits of DSCP */ d_wme_ac = TID_TO_WME_AC(tos); - } else { -#endif /* INET */ + break; + } +#endif #ifdef INET6 - if (eh && eh->ether_type == htons(ETHERTYPE_IPV6)) { + case ETHERTYPE_IPV6: + { uint32_t flow; uint8_t tos; /* @@ -1296,15 +1303,15 @@ ieee80211_classify(struct ieee80211_node *ni, struct mbuf *m) tos = (uint8_t)(ntohl(flow) >> 20); tos >>= 5; /* NB: ECN + low 3 bits of DSCP */ d_wme_ac = TID_TO_WME_AC(tos); - } else { -#endif /* INET6 */ - d_wme_ac = WME_AC_BE; -#ifdef INET6 + break; } #endif -#ifdef INET + default: +no_eh: + d_wme_ac = WME_AC_BE; + break; } -#endif + /* * Use highest priority AC. */