[PATCH v3] AP: Allow downgrading to 20MHz based on OBSS results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When auto channel selection (ACS) is used for HE 40MHz in 2.4GHz
band, AP sets center frequency after finding a 40MHz channel and
then runs a scan for overlapping BSSes in neighboring channels.
Upon OBSS detection, AP should downgrade to 20MHz bandwidth.

Currently this is broken because allowed_ht40_channel_pair() returns
true in this case and the steps to reset center frequency are not
executed causing failure to bring interface up.

Fix the condition to allow rollback to 20MHz.

Signed-off-by: Aloka Dixit <alokad@xxxxxxxxxxxxxx>
---
v3: Rebased to latest. Modified commit description.

 src/ap/hw_features.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/ap/hw_features.c b/src/ap/hw_features.c
index f6e69030d767..1563a9ee34a4 100644
--- a/src/ap/hw_features.c
+++ b/src/ap/hw_features.c
@@ -313,7 +313,7 @@ static void ieee80211n_check_scan(struct hostapd_iface *iface)
 {
 	struct wpa_scan_results *scan_res;
 	int oper40;
-	int res;
+	int res = 0;
 
 	/* Check list of neighboring BSSes (from scan) to see whether 40 MHz is
 	 * allowed per IEEE Std 802.11-2012, 10.15.3.2 */
@@ -349,7 +349,8 @@ static void ieee80211n_check_scan(struct hostapd_iface *iface)
 		}
 	}
 
-	res = ieee80211n_allowed_ht40_channel_pair(iface);
+	if (iface->conf->secondary_channel)
+		res = ieee80211n_allowed_ht40_channel_pair(iface);
 	if (!res) {
 		iface->conf->secondary_channel = 0;
 		hostapd_set_oper_centr_freq_seg0_idx(iface->conf, 0);

base-commit: 88436baaac4172fda2abbe41449ff0bf8994ee9d
-- 
2.25.0


_______________________________________________
Hostap mailing list
Hostap@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/hostap



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux