Date: Wed, 01 Apr 2026 04:34:08 +0000 From: Bjoern A. Zeeb <bz@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: f4e018e9a49b - stable/14 - net80211: fix VHT160/80P80/80 chanwidth selection in the "40-" case Message-ID: <69cca040.42713.ac63325@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch stable/14 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f4e018e9a49b7bf4ddced51ad1ffc4415182cb45 commit f4e018e9a49b7bf4ddced51ad1ffc4415182cb45 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2026-03-08 00:57:33 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2026-04-01 04:33:47 +0000 net80211: fix VHT160/80P80/80 chanwidth selection in the "40-" case Depending on the base channel ni_vht_chan2 - ni_vht_chan1 can be negative. Apply abs() as indicated in the comments right above | CCFS1 - CCFS0 | = 8 or > 16 in order to fix the channel width selection. Sponsored by: The FreeBSD Foundation PR: 293645 Fixes: 4bf049bfeefd9 Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55717 (cherry picked from commit 6cfd2b93e68061c7831016b91c2e308d01658764) (cherry picked from commit 68fcf0b94c5167f89481052f358064c9b6732553) --- sys/net80211/ieee80211_ht.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/net80211/ieee80211_ht.c b/sys/net80211/ieee80211_ht.c index db5d7a90918c..697841a0ce86 100644 --- a/sys/net80211/ieee80211_ht.c +++ b/sys/net80211/ieee80211_ht.c @@ -38,6 +38,7 @@ #include <sys/param.h> #include <sys/kernel.h> +#include <sys/libkern.h> #include <sys/malloc.h> #include <sys/systm.h> #include <sys/endian.h> @@ -2028,11 +2029,11 @@ do { \ } /* CCFS1 > 0 and | CCFS1 - CCFS0 | = 8 */ - if (ni->ni_vht_chan2 > 0 && (ni->ni_vht_chan2 - ni->ni_vht_chan1) == 8) + if (ni->ni_vht_chan2 > 0 && abs(ni->ni_vht_chan2 - ni->ni_vht_chan1) == 8) can_vht160 = can_vht80 = true; /* CCFS1 > 0 and | CCFS1 - CCFS0 | > 16 */ - if (ni->ni_vht_chan2 > 0 && (ni->ni_vht_chan2 - ni->ni_vht_chan1) > 16) + if (ni->ni_vht_chan2 > 0 && abs(ni->ni_vht_chan2 - ni->ni_vht_chan1) > 16) can_vht80p80 = can_vht80 = true; /* CFFS1 == 0 */home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69cca040.42713.ac63325>
