RE: [PATCH RFC v1 1/7] mac80211: Add stations iterator where the iterator function may sleep
From: Pkshih <pkshih@realtek.com>
Date: 2021-07-19 05:47:02
Also in:
lkml, netdev
quoted hunk ↗ jump to hunk
-----Original Message----- From: Martin Blumenstingl [mailto:martin.blumenstingl@googlemail.com] Sent: Sunday, July 18, 2021 4:41 AM To: linux-wireless@vger.kernel.org Cc: tony0620emma@gmail.com; kvalo@codeaurora.org; johannes@sipsolutions.net; netdev@vger.kernel.org; linux-kernel@vger.kernel.org; Neo Jou; Jernej Skrabec; Martin Blumenstingl Subject: [PATCH RFC v1 1/7] mac80211: Add stations iterator where the iterator function may sleep ieee80211_iterate_active_interfaces() and ieee80211_iterate_active_interfaces_atomic() already exist, where the former allows the iterator function to sleep. Add ieee80211_iterate_stations() which is similar to ieee80211_iterate_stations_atomic() but allows the iterator to sleep. This is needed for adding SDIO support to the rtw88 driver. Some interators there are reading or writing registers. With the SDIO ops (sdio_readb, sdio_writeb and friends) this means that the iterator function may sleep. Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> --- include/net/mac80211.h | 18 ++++++++++++++++++ net/mac80211/util.c | 13 +++++++++++++ 2 files changed, 31 insertions(+)diff --git a/include/net/mac80211.h b/include/net/mac80211.h index d8a1d09a2141..77de89690008 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h@@ -5575,6 +5575,24 @@ void ieee80211_iterate_active_interfaces_mtx(struct ieee80211_hw *hw, struct ieee80211_vif *vif), void *data); +/** + * ieee80211_iterate_stations_atomic - iterate stations
ieee80211_iterate_stations - ... [...] -- Ping-Ke