All of lore.kernel.org
 help / color / mirror / Atom feed
* mac80211 keeps trying to start ampdu session??
@ 2018-10-23  7:44 Ali MJ Al-Nasrawy
  2018-10-23  8:18 ` Johannes Berg
  0 siblings, 1 reply; 4+ messages in thread
From: Ali MJ Al-Nasrawy @ 2018-10-23  7:44 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless, Arend van Spriel

Hi,

I am trying to debug brcmsmac wireless driver for spamming the log with
the message:
[...] START: tid 2 is not agg'able
for it does not support AMPDU aggreggation for TID 2.

And after quick tracing, I found that mac80211 keeps trying to start
AMPDU session for the _same TID and STA_ despite that the driver returns
non-zero code via its ampdu_action callback and that non-zero return
codes are recognized as the "HW unavailable" for such session
(agg-tx.c:ieee80211_tx_ba_session_handle_start)

So, Is that an expected behaviour from mac80211 or not??

Regards,
Ali MJ

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mac80211 keeps trying to start ampdu session??
  2018-10-23  7:44 mac80211 keeps trying to start ampdu session?? Ali MJ Al-Nasrawy
@ 2018-10-23  8:18 ` Johannes Berg
  2018-10-23 12:22   ` Ali MJ Al-Nasrawy
  0 siblings, 1 reply; 4+ messages in thread
From: Johannes Berg @ 2018-10-23  8:18 UTC (permalink / raw)
  To: Ali MJ Al-Nasrawy; +Cc: linux-wireless, Arend van Spriel

On Tue, 2018-10-23 at 10:44 +0300, Ali MJ Al-Nasrawy wrote:
> Hi,
> 
> I am trying to debug brcmsmac wireless driver for spamming the log with
> the message:
> [...] START: tid 2 is not agg'able
> for it does not support AMPDU aggreggation for TID 2.
> 
> And after quick tracing, I found that mac80211 keeps trying to start
> AMPDU session for the _same TID and STA_ despite that the driver returns
> non-zero code via its ampdu_action callback and that non-zero return
> codes are recognized as the "HW unavailable" for such session
> (agg-tx.c:ieee80211_tx_ba_session_handle_start)
> 
> So, Is that an expected behaviour from mac80211 or not??

This depends on the rate control algorithm, it triggers this.

I think - perhaps depending on the return value - mac80211 *does* give
up eventually, but not really sure.

Perhaps just remove the message?

johannes


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mac80211 keeps trying to start ampdu session??
  2018-10-23  8:18 ` Johannes Berg
@ 2018-10-23 12:22   ` Ali MJ Al-Nasrawy
  2018-10-23 20:29     ` Johannes Berg
  0 siblings, 1 reply; 4+ messages in thread
From: Ali MJ Al-Nasrawy @ 2018-10-23 12:22 UTC (permalink / raw)
  To: Johannes Berg; +Cc: linux-wireless, Arend van Spriel

On Tue, 23 Oct 2018 10:18:54 +0200
Johannes Berg <johannes@sipsolutions.net> wrote:
> On Tue, 2018-10-23 at 10:44 +0300, Ali MJ Al-Nasrawy wrote:
> > Hi,
> > 
> > I am trying to debug brcmsmac wireless driver for spamming the log
> > with the message:
> > [...] START: tid 2 is not agg'able
> > for it does not support AMPDU aggreggation for TID 2.
> > 
> > And after quick tracing, I found that mac80211 keeps trying to start
> > AMPDU session for the _same TID and STA_ despite that the driver
> > returns non-zero code via its ampdu_action callback and that
> > non-zero return codes are recognized as the "HW unavailable" for
> > such session (agg-tx.c:ieee80211_tx_ba_session_handle_start)
> > 
> > So, Is that an expected behaviour from mac80211 or not??  
> 
> This depends on the rate control algorithm, it triggers this.

In this case, it is minstrel_ht.

> 
> I think - perhaps depending on the return value - mac80211 *does* give
> up eventually, but not really sure.

The return value is handled only in
agg-tx.c:ieee80211_tx_ba_session_handle_start and it doesn't pass it
down or recognize difference between non-zero return values.

And I don't think that it gives up retrying: I already have 800MB of
compressed logs for the last four days only full of this message and
additionally I ran a simple test for the last hour and found that it
tries to start ampdu session for every frame to be sent with that TID!

> Perhaps just remove the message?

OK, I report this just in case of it being unintended behavior with
probably a negative performance impact.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mac80211 keeps trying to start ampdu session??
  2018-10-23 12:22   ` Ali MJ Al-Nasrawy
@ 2018-10-23 20:29     ` Johannes Berg
  0 siblings, 0 replies; 4+ messages in thread
From: Johannes Berg @ 2018-10-23 20:29 UTC (permalink / raw)
  To: Ali MJ Al-Nasrawy; +Cc: linux-wireless, Arend van Spriel, nbd

On Tue, 2018-10-23 at 15:22 +0300, Ali MJ Al-Nasrawy wrote:

> > This depends on the rate control algorithm, it triggers this.
> 
> In this case, it is minstrel_ht.
> 
> > 
> > I think - perhaps depending on the return value - mac80211 *does* give
> > up eventually, but not really sure.
> 
> The return value is handled only in
> agg-tx.c:ieee80211_tx_ba_session_handle_start and it doesn't pass it
> down or recognize difference between non-zero return values.

Indeed.

> And I don't think that it gives up retrying: I already have 800MB of
> compressed logs for the last four days only full of this message and
> additionally I ran a simple test for the last hour and found that it
> tries to start ampdu session for every frame to be sent with that TID!

Indeed, but that does seem excessive. Perhaps minstrel_ht should learn
to back off, Felix what do you think? In this case the driver basically
says "I don't want to do agg on this TID" and that repeats for every
packet.

> > Perhaps just remove the message?
> 
> OK, I report this just in case of it being unintended behavior with
> probably a negative performance impact.

It might actually, yeah ...

johannes


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-10-23 20:29 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-23  7:44 mac80211 keeps trying to start ampdu session?? Ali MJ Al-Nasrawy
2018-10-23  8:18 ` Johannes Berg
2018-10-23 12:22   ` Ali MJ Al-Nasrawy
2018-10-23 20:29     ` Johannes Berg

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.