Commit ad59c171 authored by Ben Greear's avatar Ben Greear Committed by Kleber Sacilotto de Souza

mac80211: Clear beacon_int in ieee80211_do_stop

BugLink: https://bugs.launchpad.net/bugs/1811077

commit 5c21e810 upstream.

This fixes stale beacon-int values that would keep a netdev
from going up.

To reproduce:

Create two VAP on one radio.
vap1 has beacon-int 100, start it.
vap2 has beacon-int 240, start it (and it will fail
  because beacon-int mismatch).
reconfigure vap2 to have beacon-int 100 and start it.
  It will fail because the stale beacon-int 240 will be used
  in the ifup path and hostapd never gets a chance to set the
  new beacon interval.

Cc: stable@vger.kernel.org
Signed-off-by: default avatarBen Greear <greearb@candelatech.com>
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: default avatarJuerg Haefliger <juergh@canonical.com>
Signed-off-by: default avatarKleber Sacilotto de Souza <kleber.souza@canonical.com>
parent 568a1b6d
...@@ -987,6 +987,8 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata, ...@@ -987,6 +987,8 @@ static void ieee80211_do_stop(struct ieee80211_sub_if_data *sdata,
if (local->open_count == 0) if (local->open_count == 0)
ieee80211_clear_tx_pending(local); ieee80211_clear_tx_pending(local);
sdata->vif.bss_conf.beacon_int = 0;
/* /*
* If the interface goes down while suspended, presumably because * If the interface goes down while suspended, presumably because
* the device was unplugged and that happens before our resume, * the device was unplugged and that happens before our resume,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment