> From: Johannes Berg > > ieee80211_sta_free_link() only frees the link and doesn't > unhash it, so it can't be used here. Instead this needs > to use ieee80211_sta_remove_link(), which unhashes it. An > argument against it was that it also calls the driver and > that already happened, but calls to the driver removing a > link that's already removed are suppressed, so that's not > actually an issue. Use it to fix the hashtable. > > Reported-and-tested-by: Jouni Malinen > Fixes: 84674b03d8bf ("wifi: mac80211: Remove deleted sta links in ieee80211_ml_reconf_work()") > Signed-off-by: Johannes Berg Thanks for fixing it. Acked-by: Lorenzo Bianconi > --- > net/mac80211/mlme.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c > index f279bdb03aca..0cd8d07bf668 100644 > --- a/net/mac80211/mlme.c > +++ b/net/mac80211/mlme.c > @@ -7119,7 +7119,7 @@ static void ieee80211_ml_reconf_work(struct wiphy *wiphy, > > for_each_set_bit(link_id, &removed_links, > IEEE80211_MLD_MAX_NUM_LINKS) > - ieee80211_sta_free_link(sta, link_id); > + ieee80211_sta_remove_link(sta, link_id); > } > > new_dormant_links = sdata->vif.dormant_links & ~sdata->u.mgd.removed_links; > -- > 2.53.0 >