On Tue, 2024-03-26 at 20:24 -0700, Xin Deng wrote: > wdev->valid_links is not cleared when upper layer disconnect from a > wdev->AP MLD. It has been observed that this would prevent offchannel > operations like remain-on-channel which would be needed for user space > operations with Public Action frame. I agree that's a problem, we shouldn't leave the valid_links set. > Signed-off-by: Xin Deng <quic_deng@xxxxxxxxxxx> > --- > net/wireless/sme.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/net/wireless/sme.c b/net/wireless/sme.c > index 82e3ce42206c..86e837f37f8c 100644 > --- a/net/wireless/sme.c > +++ b/net/wireless/sme.c > @@ -492,6 +492,7 @@ void cfg80211_wdev_release_link_bsses(struct wireless_dev *wdev, u16 link_mask) > &wdev->links[link].client.current_bss->pub); > wdev->links[link].client.current_bss = NULL; > } > + wdev->valid_links = 0; > But this is (very obviously, even with only the limited context shown!) in the completely wrong place. johannes