wifi: mac80211: handle debugfs when switching to/from MLO
authorMiri Korenblit <miriam.rachel.korenblit@intel.com>
Thu, 28 Sep 2023 14:35:26 +0000 (17:35 +0300)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 23 Oct 2023 09:43:26 +0000 (11:43 +0200)
commitc942398f95efb06d5434f86ea00fabe267f57af8
treef03f16c2056fd469c65a59628f5fe552cb36415a
parenta1f5dcb1c0c1e26a7e158ce9fc28355041f26909
wifi: mac80211: handle debugfs when switching to/from MLO

In MLO, we have a per-link debugfs directory which contains the
per-link files. In case of non-MLO we would like to put the per-link
files in the netdev directory to keep it how it was before MLO.

- Upon interface creation the netdev will be created with the per-link
  files in it.
- Upon switching to MLO: delete the entire netdev directory and then
  recreate it without the per-link files. Then the per-link directories
  with the per-link files in it will be created in ieee80211_link_init()
- Upon switching to non-MLO: delete the entire netdev directory
  (including the per-link directories) and recreate it with the per-link
  files in it.

Note that this also aligns to always call the vif link debugfs
method for the deflink as promised in the documentation, which
wasn't done before.

Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230928172905.082e698caca9.I5bef7b2026e0f58b4a958b3d1f459ac5baeccfc9@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/debugfs_netdev.c
net/mac80211/debugfs_netdev.h
net/mac80211/driver-ops.c
net/mac80211/iface.c
net/mac80211/link.c