From: Marek Lindner <lindner_marek@yahoo.de>
To: Seth Forshee <seth.forshee@canonical.com>
Cc: Felix Fietkau <nbd@openwrt.org>,
linux-wireless@vger.kernel.org,
"Luis R. Rodriguez" <mcgrof@qca.qualcomm.com>,
Jouni Malinen <jouni@qca.qualcomm.com>,
Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>,
Senthil Balasubramanian <senthilb@qca.qualcomm.com>
Subject: Re: CTS timeout issue with AR9285
Date: Sat, 4 Feb 2012 14:08:35 +0800 [thread overview]
Message-ID: <201202041408.35588.lindner_marek@yahoo.de> (raw)
In-Reply-To: <20120202143843.GB24483@ubuntu-macmini>
On Thursday, February 02, 2012 22:38:43 Seth Forshee wrote:
> On Thu, Feb 02, 2012 at 01:35:22PM +0100, Felix Fietkau wrote:
> > On 2012-02-02 5:25 AM, Seth Forshee wrote:
> > > I recently updated a machine with AR9285 wireless from kernel version
> > > 3.0 to 3.2 and saw that wireless had become slow and unreliable. It
> > > seems that the problem is extremely frequent CTS timeouts, which began
> > > happening with commit adb5066 (ath9k_hw: do not apply the 2.4 ghz ack
> > > timeout workaround to cts). Restoring the CTS timeout to the value
> > > prior to this commit on top of 3.2 gets performance back to what it
> > > was with 3.0.
> > >
> > > I don't have any other ath9k cards lying around, but various other
> > > cards are working fine with this router. Any ideas what's wrong here?
> >
> > Please try this patch:
> >
> > --- a/drivers/net/wireless/ath/ath9k/hw.c
> > +++ b/drivers/net/wireless/ath/ath9k/hw.c
> > @@ -1061,13 +1061,16 @@ void ath9k_hw_init_global_settings(struc
> >
> > /*
> >
> > * Workaround for early ACK timeouts, add an offset to match the
> >
> > - * initval's 64us ack timeout value.
> > + * initval's 64us ack timeout value. Use 48us for the CTS timeout.
> >
> > * This was initially only meant to work around an issue with delayed
> > * BA frames in some implementations, but it has been found to fix
ACK
> > * timeout issues in other cases as well.
> > */
> >
> > - if (conf->channel && conf->channel->band == IEEE80211_BAND_2GHZ)
> > + if (conf->channel && conf->channel->band == IEEE80211_BAND_2GHZ) {
> >
> > acktimeout += 64 - sifstime - ah->slottime;
> >
> > + ctstimeout += 48 - sifstime - ah->slottime;
> > + }
> > +
> >
> > ath9k_hw_set_sifs_time(ah, sifstime);
> > ath9k_hw_setslottime(ah, slottime);
>
> The wireless seems to be working fine with this patch.
I second this - my rts/cts problems went away as well after applying this
patch.
Regards,
Marek
next prev parent reply other threads:[~2012-02-04 6:08 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-02 4:25 CTS timeout issue with AR9285 Seth Forshee
2012-02-02 11:28 ` Mohammed Shafi
2012-02-02 14:20 ` Seth Forshee
2012-02-02 12:35 ` Felix Fietkau
2012-02-02 14:15 ` Martin Hundebøll
2012-02-02 14:22 ` Felix Fietkau
2012-02-02 14:38 ` Seth Forshee
2012-02-04 6:08 ` Marek Lindner [this message]
2012-02-04 10:24 ` Adrian Chadd
2012-02-04 20: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=201202041408.35588.lindner_marek@yahoo.de \
--to=lindner_marek@yahoo.de \
--cc=jouni@qca.qualcomm.com \
--cc=linux-wireless@vger.kernel.org \
--cc=mcgrof@qca.qualcomm.com \
--cc=nbd@openwrt.org \
--cc=senthilb@qca.qualcomm.com \
--cc=seth.forshee@canonical.com \
--cc=vthiagar@qca.qualcomm.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.