Felix Fietkau <[email protected]> writes:

> Currently there is no way for the driver to signal to mac80211 that it should
> schedule a TXQ even if there are no packets on the mac80211 part of that 
> queue.
> This is problematic if the driver has an internal retry queue to deal with
> software A-MPDU retry.
>
> This patch changes the behavior of ieee80211_schedule_txq to always schedule
> the queue, as its only user (ath9k) seems to expect such behavior already:
> it calls this function on tx status and on powersave wakeup whenever its
> internal retry queue is not empty
>
> Signed-off-by: Felix Fietkau <[email protected]>
> ---
>  include/net/mac80211.h | 17 ++++++++++++++---
>  net/mac80211/tx.c      | 10 ++++++----
>  2 files changed, 20 insertions(+), 7 deletions(-)
>
> diff --git a/include/net/mac80211.h b/include/net/mac80211.h
> index 0de0aba580eb..630941e5a20e 100644
> --- a/include/net/mac80211.h
> +++ b/include/net/mac80211.h
> @@ -6291,15 +6291,26 @@ static inline void ieee80211_txq_schedule_end(struct 
> ieee80211_hw *hw, u8 ac)
>  {
>  }
>  
> +void __ieee80211_schedule_txq(struct ieee80211_hw *hw,
> +                           struct ieee80211_txq *txq, bool force);
> +

So are you planning to also change return_txq() to take the 'force'
argument and wrap __ieee80211_schedule_txq()? Since that was the context
we originally started discussing this :)

-Toke

Reply via email to