From: Andreas Hartmann <andihartmann@01019freenet.de>
To: Christian Lamparter <chunkeey@googlemail.com>
Cc: Stanislaw Gruszka <sgruszka@redhat.com>,
linux-wireless@vger.kernel.org, users@rt2x00.serialmonkey.com,
Francisco Pina Martins <f.pinamartins@gmail.com>,
Helmut Schaa <helmut.schaa@googlemail.com>,
Felix Fietkau <nbd@openwrt.org>
Subject: Re: [PATCH 1/2] mac80211: introduce IEEE80211_HW_TEARDOWN_AGGR_ON_BAR_FAIL
Date: Mon, 03 Dec 2012 20:56:31 +0100 [thread overview]
Message-ID: <50BD03EF.3010504@01019freenet.de> (raw)
In-Reply-To: <201212031629.16806.chunkeey@googlemail.com>
Hello Christian,
thanks for your explanation!
Christian Lamparter wrote:
> On Monday, December 03, 2012 03:13:55 PM Andreas Hartmann wrote:
>> Stanislaw Gruszka wrote:
>>> Commit f0425beda4d404a6e751439b562100b902ba9c98 "mac80211: retry sending
>>> failed BAR frames later instead of tearing down aggr" caused regression
>>> on rt2x00 hardware (connection hangs).
>>
>> This patch caused a problem, too, with carl9170
>> (http://thread.gmane.org/gmane.linux.kernel.wireless.general/92203/focus=92376).
>> How did they fix it (the thread unfortunately ends without any solution
>> / patch).
>
> This was fixed by: carl9170: fix HT peer BA session corruption
> (c9122c0d63a50 in wireless-testing). The issue here is that the
> hardware does not set the tx success bit when it receives a
> BA for a sent BAR [looks like it is expecting a legacy ACK?!
> but who knows - the original vendor driver [otus] didn't really
> deal with BARs anyway].
If I got Helmut correctly here
(http://news.gmane.org/find-root.php?group=gmane.linux.kernel.wireless.general&article=83762),
rt2x00pci could have a related problem (probably missing tx status).
Wouldn't it be an idea to try a similar approach?
https://kernel.googlesource.com/pub/scm/linux/kernel/git/linville/wireless-testing/+/c9122c0d63a50bab0a97dc936a38c0f921b6930e^!/
> So the driver has to do that job and currently it's done in
> the following way:
> When mac80211 sends a BAR, the driver will keep a reference of
> the frame around in ar->bar_list, before it is sent on its way.
> If the device receives a BA within the retry window then the
> driver's rx-path will enter carl9170_ba_check. This function
> sets the TX_STAT_ACK flag [for the BAR] if the incoming BA
> matches.
>
> While there are a few problems with this approach [added tx and rx
> overhead due to flexible ba filtering and bar queuing, unwanted BAR
> retries, ...], it was one of the better solution which was within
> the capabilities of the hardware, firmware and driver.
> Obviously, if the ar9170 hardware would just set that tx success
> bit [ath9k mac does this properly], this wouldn't be necessary.
>
> Regards,
> Chr
Thanks,
kind regards,
Andreas
next prev parent reply other threads:[~2012-12-03 20:00 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-03 11:56 [PATCH 1/2] mac80211: introduce IEEE80211_HW_TEARDOWN_AGGR_ON_BAR_FAIL Stanislaw Gruszka
2012-12-03 11:59 ` [PATCH 2/2] Revert: "rt2x00: Don't let mac80211 send a BAR when an AMPDU subframe fails" Stanislaw Gruszka
2012-12-03 15:27 ` John W. Linville
2012-12-03 14:13 ` [PATCH 1/2] mac80211: introduce IEEE80211_HW_TEARDOWN_AGGR_ON_BAR_FAIL Andreas Hartmann
2012-12-03 15:29 ` Christian Lamparter
2012-12-03 19:56 ` Andreas Hartmann [this message]
2012-12-03 20:21 ` Helmut Schaa
2012-12-04 9:59 ` Stanislaw Gruszka
2012-12-03 17:13 ` 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=50BD03EF.3010504@01019freenet.de \
--to=andihartmann@01019freenet.de \
--cc=chunkeey@googlemail.com \
--cc=f.pinamartins@gmail.com \
--cc=helmut.schaa@googlemail.com \
--cc=linux-wireless@vger.kernel.org \
--cc=nbd@openwrt.org \
--cc=sgruszka@redhat.com \
--cc=users@rt2x00.serialmonkey.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 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.