linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Felix Fietkau <nbd@openwrt.org>
To: "Björn Smedman" <bjorn.smedman@venatech.se>
Cc: linux-wireless@vger.kernel.org, j@w1.fi, lrodriguez@atheros.com,
	m.sujith@gmail.com
Subject: Re: [RFC 2/2] ath9k: fix powersave frame filtering/buffering in AP mode
Date: Tue, 08 Feb 2011 23:57:53 +0100	[thread overview]
Message-ID: <4D51CA71.7040105@openwrt.org> (raw)
In-Reply-To: <AANLkTinhX9R9XY2_BoJXkRxNMZ3F_Adzwcq5XVQyEX0t@mail.gmail.com>

On 2011-02-08 11:06 PM, Björn Smedman wrote:
> On Tue, Feb 8, 2011 at 10:26 PM, Felix Fietkau <nbd@openwrt.org> wrote:
>> This patch fixes a long standing issue of pending packets in the queue being
>> sent (and retransmitted many times) to sleeping stations.
>> This was made worse by aggregation through driver-internal retransmitting
>> of A-MDPU subframes.
> 
> Nice. :) Just one thought, shouldn't there be one more call to
> ieee80211_sta_set_tim() somewhere? I'm thinking there might be a race
> condition otherwise where the tid queues are empty on sta_notify but
> then later some failed/filtered A-MPDU subframes get queued...
Good point, I'll fix that...

> Also, just curious so feel free to answer or not, but how does the
> hardware handle the ps filter thing? Does it have a ps bit for every
> dst address? How many different dsts can it keep track of?
The hardware has a bitfield of blocked destinations, using the
destination index of the descriptor (which is also used as an index for
the key cache). The key cache can hold 128 entries.
Having a frame time out with excessive retries will cause the hardware
to block frames using the same destination index, until a frame is sent
with a bit that tells the hardware to clear that flag.
Right now, all unencrypted traffic uses the same destination index (0),
so unencrypted mode will have more corner cases compared to using WPA2,
but I plan on fixing that soon.

- Felix

      reply	other threads:[~2011-02-08 22:57 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-08 21:26 [RFC 1/2] mac80211: add a function for setting the TIM bit for a specific station Felix Fietkau
2011-02-08 21:26 ` [RFC 2/2] ath9k: fix powersave frame filtering/buffering in AP mode Felix Fietkau
2011-02-08 22:06   ` Björn Smedman
2011-02-08 22:57     ` Felix Fietkau [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4D51CA71.7040105@openwrt.org \
    --to=nbd@openwrt.org \
    --cc=bjorn.smedman@venatech.se \
    --cc=j@w1.fi \
    --cc=linux-wireless@vger.kernel.org \
    --cc=lrodriguez@atheros.com \
    --cc=m.sujith@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).