I was testing on my 4.16 kernel with a bunch of VAPs and I had two configured
for 100 beacon interval, and more at 240. This failed for reasons I figured out
(gcd logic), but even once I tried to configure the vaps for 240 interval they
could not come up. I am thinking maybe it was because I could only re-configure
admin-up interfaces, and they couldn't come up due the gcd thing?
Anyway, while poking, I thought maybe the patch below would be helpful since
we shouldn't care about admin-down interfaces in this case?
diff --git a/net/wireless/util.c b/net/wireless/util.c
index fbc880e..56d7583 100644
--- a/net/wireless/util.c
+++ b/net/wireless/util.c
@@ -1541,6 +1541,9 @@ static void cfg80211_calculate_bi_data(struct wiphy
*wiphy, u32 new_beacon_int,
if (wdev->beacon_interval == *beacon_int_gcd)
continue;
+ if (!netif_running(wdev->netdev))
+ continue;
+
*beacon_int_different = true;
*beacon_int_gcd = gcd(*beacon_int_gcd, wdev->beacon_interval);
}
Thanks,
Ben
--
Ben Greear <[email protected]>
Candela Technologies Inc http://www.candelatech.com