mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-03-17 12:34:01 +00:00
wifi: mac80211_hwsim: fix link change handling
The code for determining which links to update in wmediumd
or virtio was wrong, fix it to remove the deflink only if
there were no old links, and also add the deflink if there
are no other new links.
Fixes: c204d9df02
("wifi: mac80211_hwsim: handle links for wmediumd/virtio")
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
c73993b865
commit
65f7052b6c
1 changed files with 6 additions and 1 deletions
|
@ -2995,10 +2995,15 @@ static int mac80211_hwsim_change_vif_links(struct ieee80211_hw *hw,
|
|||
u16 old_links, u16 new_links,
|
||||
struct ieee80211_bss_conf *old[IEEE80211_MLD_MAX_NUM_LINKS])
|
||||
{
|
||||
unsigned long rem = old_links & ~new_links ?: BIT(0);
|
||||
unsigned long rem = old_links & ~new_links;
|
||||
unsigned long add = new_links & ~old_links;
|
||||
int i;
|
||||
|
||||
if (!old_links)
|
||||
rem |= BIT(0);
|
||||
if (!new_links)
|
||||
add |= BIT(0);
|
||||
|
||||
for_each_set_bit(i, &rem, IEEE80211_MLD_MAX_NUM_LINKS)
|
||||
mac80211_hwsim_config_mac_nl(hw, old[i]->addr, false);
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue