From: Felix Fietkau <nbd@openwrt.org>
To: ath9k-devel@lists.ath9k.org
Subject: [ath9k-devel] [RFC] ath9k: Detect and work-around tx-queue hang.
Date: Wed, 13 Mar 2013 15:18:24 +0100 [thread overview]
Message-ID: <51408AB0.7000600@openwrt.org> (raw)
In-Reply-To: <513F70E5.2050004@candelatech.com>
On 2013-03-12 7:16 PM, Ben Greear wrote:
> On 02/22/2013 04:55 AM, Ben Greear wrote:
>> On 02/22/2013 04:38 AM, Felix Fietkau wrote:
>>> On 2013-02-22 1:25 PM, Sujith Manoharan wrote:
>>>> Felix Fietkau wrote:
>>>>> Please also check if the station(s) that the frames are queued for are
>>>>> in powersave state for some reason. That would prevent the tx path from
>>>>> throwing them in the hw queue, yet they'd still take up pending-frame
>>>>> slots. I was planning on fixing this eventually by expiring frames that
>>>>> stay in the queue for too long, but haven't decided on the exact
>>>>> approach yet.
>>>>
>>>> PS is disabled for multi-VIF.
>>> What about off-channel PS due to scans, etc.
>>
>> Scan is always locked to the same channel in this setup (once
>> a single station is associated).
>>
>> The stations stay associated while this problem happens (the
>> high-priority queue seems to work just fine, which may be
>> the reason they stay associated just fine.)
>>
>> In some cases, I see packets delivered around 30 seconds late...
>> aside from PS and off-channel..any idea what could make a packet
>> stick around that long in the tx queues?
>
> One of our customers on a 3.5.7+ kernel hit the problem without
> using any RF attenuator...just over-the-air communication to
> their AP. It happened on both 2.4 and 5Ghz bands. Seems rx
> signal is around 40 in their environment. It took them around
> 24 hours to hit the problem on average.
>
> Last we checked, we could fairly easily reproduce this in
> our lab using an attenuator and a certain setup, so if there
> is any debugging we could add to help narrow down what
> might be causing this, we can give that a try.
>
> For instance, is there any good way to know for certain
> if packets in the queue are in power-save or not? I know
> we at least attempt to disable power-save, but possibly
> it gets re-enabled somehow?
The ath_node struct tracks if a node is sleeping or not. If a node is
sleeping, its tid queues can still hold some frames but will not be
serviced by ath_txq_schedule.
- Felix
WARNING: multiple messages have this Message-ID (diff)
From: Felix Fietkau <nbd@openwrt.org>
To: Ben Greear <greearb@candelatech.com>
Cc: Sujith Manoharan <sujith@msujith.org>,
ath9k-devel@venema.h4ckr.net, linux-wireless@vger.kernel.org
Subject: Re: [ath9k-devel] [RFC] ath9k: Detect and work-around tx-queue hang.
Date: Wed, 13 Mar 2013 15:18:24 +0100 [thread overview]
Message-ID: <51408AB0.7000600@openwrt.org> (raw)
In-Reply-To: <513F70E5.2050004@candelatech.com>
On 2013-03-12 7:16 PM, Ben Greear wrote:
> On 02/22/2013 04:55 AM, Ben Greear wrote:
>> On 02/22/2013 04:38 AM, Felix Fietkau wrote:
>>> On 2013-02-22 1:25 PM, Sujith Manoharan wrote:
>>>> Felix Fietkau wrote:
>>>>> Please also check if the station(s) that the frames are queued for are
>>>>> in powersave state for some reason. That would prevent the tx path from
>>>>> throwing them in the hw queue, yet they'd still take up pending-frame
>>>>> slots. I was planning on fixing this eventually by expiring frames that
>>>>> stay in the queue for too long, but haven't decided on the exact
>>>>> approach yet.
>>>>
>>>> PS is disabled for multi-VIF.
>>> What about off-channel PS due to scans, etc.
>>
>> Scan is always locked to the same channel in this setup (once
>> a single station is associated).
>>
>> The stations stay associated while this problem happens (the
>> high-priority queue seems to work just fine, which may be
>> the reason they stay associated just fine.)
>>
>> In some cases, I see packets delivered around 30 seconds late...
>> aside from PS and off-channel..any idea what could make a packet
>> stick around that long in the tx queues?
>
> One of our customers on a 3.5.7+ kernel hit the problem without
> using any RF attenuator...just over-the-air communication to
> their AP. It happened on both 2.4 and 5Ghz bands. Seems rx
> signal is around 40 in their environment. It took them around
> 24 hours to hit the problem on average.
>
> Last we checked, we could fairly easily reproduce this in
> our lab using an attenuator and a certain setup, so if there
> is any debugging we could add to help narrow down what
> might be causing this, we can give that a try.
>
> For instance, is there any good way to know for certain
> if packets in the queue are in power-save or not? I know
> we at least attempt to disable power-save, but possibly
> it gets re-enabled somehow?
The ath_node struct tracks if a node is sleeping or not. If a node is
sleeping, its tid queues can still hold some frames but will not be
serviced by ath_txq_schedule.
- Felix
next prev parent reply other threads:[~2013-03-13 14:18 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-22 2:06 [ath9k-devel] [RFC] ath9k: Detect and work-around tx-queue hang greearb at candelatech.com
2013-02-22 2:06 ` greearb
2013-02-22 4:28 ` [ath9k-devel] " Sujith Manoharan
2013-02-22 4:28 ` Sujith Manoharan
2013-02-22 4:42 ` [ath9k-devel] " Ben Greear
2013-02-22 4:42 ` Ben Greear
2013-02-22 4:49 ` [ath9k-devel] " Sujith Manoharan
2013-02-22 4:49 ` Sujith Manoharan
2013-02-22 5:26 ` [ath9k-devel] " Ben Greear
2013-02-22 5:26 ` Ben Greear
2013-02-22 11:36 ` [ath9k-devel] " Felix Fietkau
2013-02-22 11:36 ` Felix Fietkau
2013-02-22 12:25 ` Sujith Manoharan
2013-02-22 12:25 ` Sujith Manoharan
2013-02-22 12:38 ` Felix Fietkau
2013-02-22 12:38 ` Felix Fietkau
2013-02-22 12:55 ` Ben Greear
2013-02-22 12:55 ` Ben Greear
2013-03-12 18:16 ` Ben Greear
2013-03-12 18:16 ` Ben Greear
2013-03-13 14:14 ` Sujith Manoharan
2013-03-13 14:14 ` Sujith Manoharan
2013-03-13 14:18 ` Felix Fietkau [this message]
2013-03-13 14:18 ` Felix Fietkau
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=51408AB0.7000600@openwrt.org \
--to=nbd@openwrt.org \
--cc=ath9k-devel@lists.ath9k.org \
/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 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.