diff options
author | Johannes Berg <johannes.berg@intel.com> | 2023-03-31 16:59:17 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2023-04-13 16:32:31 +0200 |
commit | d00800a289c9349bb659a698cbd7bc04521dc927 (patch) | |
tree | 79a5dea4d4d7be07b1e7b1aac8d11d77c669375e /include/net | |
parent | wifi: mac80211: flush queues on STA removal (diff) | |
download | linux-d00800a289c9349bb659a698cbd7bc04521dc927.tar.xz linux-d00800a289c9349bb659a698cbd7bc04521dc927.zip |
wifi: mac80211: add flush_sta method
Some drivers like iwlwifi might have per-STA queues, so we
may want to flush/drop just those queues rather than all
when removing a station. Add a separate method for that.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/mac80211.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 679421d37a42..a8dadbd83d95 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -3950,6 +3950,10 @@ struct ieee80211_prep_tx_info { * Note that vif can be NULL. * The callback can sleep. * + * @flush_sta: Flush or drop all pending frames from the hardware queue(s) for + * the given station, as it's about to be removed. + * The callback can sleep. + * * @channel_switch: Drivers that need (or want) to offload the channel * switch operation for CSAs received from the AP may implement this * callback. They must then call ieee80211_chswitch_done() to indicate @@ -4415,6 +4419,8 @@ struct ieee80211_ops { #endif void (*flush)(struct ieee80211_hw *hw, struct ieee80211_vif *vif, u32 queues, bool drop); + void (*flush_sta)(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta); void (*channel_switch)(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_channel_switch *ch_switch); |