linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vasanthakumar Thiagarajan <vasanth@atheros.com>
To: <Luis.Rodriguez@atheros.com>
Cc: Luis Rodriguez <Luis.Rodriguez@Atheros.com>,
	"Luis R. Rodriguez" <mcgrof@gmail.com>,
	"linville@tuxdriver.com" <linville@tuxdriver.com>,
	"johannes@sipsolutions.net" <johannes@sipsolutions.net>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"ath9k-devel@lists.ath9k.org" <ath9k-devel@lists.ath9k.org>
Subject: Re: [PATCH 01/15] ath9k: fix oops by downgrading assert in rc.c
Date: Tue, 9 Jun 2009 10:57:06 +0530	[thread overview]
Message-ID: <20090609052706.GC22194@vasanth-laptop> (raw)
In-Reply-To: <20090609052400.GB22194@vasanth-laptop>

On Tue, Jun 09, 2009 at 10:54:00AM +0530, Vasanth Thiagarajan wrote:
> On Tue, Jun 09, 2009 at 06:28:21AM +0530, Luis Rodriguez wrote:
> > On Mon, Jun 08, 2009 at 05:26:41PM -0700, Luis R. Rodriguez wrote:
> > > On Fri, Jun 5, 2009 at 11:55 PM, Vasanth
> > > Thiagarajan<Vasanth.Thiagarajan@atheros.com> wrote:
> > > >
> > > > ________________________________________
> > > >
> > > >> > >> +       /*
> > > >> > >> +        * Fine tuning for when no decent rate was found, the
> > > >> > >> +        * lowest should *not* be used under normal circumstances.
> > > >> > >> +        */
> > > >> > >> +       if (rix == ath_rc_priv->valid_rate_index[0]) {
> > > >> > >> +               DPRINTF(sc, ATH_DBG_RATE, "lowest rate being used, "
> > > >> > >> +                       "disabling MRR\n");
> > > >> > >> +               rates[0].idx = rate_lowest_index(sband, sta);
> > > >> > >> +               /* Disable MRR when ath_rc_ratefind_ht() found rate 0 */
> > > >> > >> +               rates[1].idx = -1;
> > > >> > >> +       }
> > > >> > >
> > > >> > > I think we can still fill other rates (1..3) with the lowest rate
> > > >> > > index as we dont differentiate the situation where the lowest rate
> > > >> > > is chosen truely by the algorithm from this particular case.
> > > >> >
> > > >> > I thought about that as well, but does it really make sense for us to
> > > >> > use MRR with the same lowest rate? That's why I just used one segment.
> > > >> > Thoughts?
> > > >>
> > > >> or we can try for max_retry (4) times. In that case the rate indices of
> > > >> other rates (just not 1) should be made -1 or this segment should
> > > >> moved just below the rate find.
> > > >
> > > > and the next segment [1]
> > > > is set to -1. Please let me know if there is anything else you see needs
> > > > change.
> > > >
> > > > Setting rate index of the rate series[1] is not enough as you are still filling the others rate
> > > > segments(2 and 3) by ath_rc_rate_getidx() in the for..loop, so other segments are also be
> > > > set to -1, but it looks hacky, one clean way of doing this can be, moving you code segment to
> > > > just below ath_rc_ratefind_ht(), like the following diff.
> > > >
> > > >
> > > >        rate_table = sc->cur_rate_table;
> > > >        rix = ath_rc_ratefind_ht(sc, ath_rc_priv, rate_table, &is_probe);
> > > > +
> > > > +       if (rix == ath_rc_priv->valid_rate_index[0]) {
> > > > +               DPRINTF(sc, ATH_DBG_RATE, "lowest rate being used, "
> > > > +                               "disabling MRR\n");
> > > > +
> > > > +               ath_rc_rate_set_series(rate_table, &rates[0], txrc,
> > > > +                                      4, rix, 0);
> > >
> > > The above sets the rate[0].idx to rix
> > >
> > > > +               rates[0].idx = rate_lowest_index(sband, sta);
> > >
> > > and then here we set it to rate_lowest_index(sband, sta) comes up
> > > with. They should be the same, but this just goes to show we need to
> > > clean this better.
> >
> > I just found this is wrong too.. the rate table used to find
> > rix is different than the rate table for the mode. ie, in 5ghz
> > when associated to an 11n station this could not include any
> > legacy rates.
> 
> This is wrong. All basci rates still be used in 11n mode.

Never mind, i think this is only true in 11ng mode

  reply	other threads:[~2009-06-09  5:28 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-05  5:41 [PATCH 00/15] ath9k/mac80211/iwlwifi: rate control cleanup Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 01/15] ath9k: fix oops by downgrading assert in rc.c Luis R. Rodriguez
2009-06-05  6:30   ` Vasanthakumar Thiagarajan
2009-06-05  7:47     ` Luis R. Rodriguez
2009-06-05  7:52       ` Vasanthakumar Thiagarajan
2009-06-05 18:29         ` Luis R. Rodriguez
2009-06-06  6:55           ` Vasanth Thiagarajan
2009-06-09  0:26             ` Luis R. Rodriguez
2009-06-09  0:58               ` Luis R. Rodriguez
2009-06-09  5:24                 ` Vasanthakumar Thiagarajan
2009-06-09  5:27                   ` Vasanthakumar Thiagarajan [this message]
2009-06-09  5:35                   ` Vasanthakumar Thiagarajan
2009-06-09  5:19               ` Vasanthakumar Thiagarajan
2009-06-05 22:16   ` Gábor Stefanik
2009-06-05 22:27     ` Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 02/15] ath9k: cleanup try count for MRR in rate control Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 03/15] ath9k: remove unused min rate calculation code Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 04/15] ath9k: remove unused stepdown when looking for the next rate Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 05/15] ath9k: remove pointless wrapper ath_rc_rate_getidx() Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 06/15] ath9k: rename ath_rc_get_nextlowervalid_txrate() Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 07/15] ath9k: remove unused ath_rc_isvalid_txmask() Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 08/15] ath9k: remove ATH9K_MODE_11B Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 09/15] ath9k: remap ATH9K_MODE_* Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 10/15] ath9k: rename ath_rc_ratefind_ht() to ath_rc_get_highest_rix() Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 11/15] ath9k: remove unnecessary IEEE80211_TX_CTL_NO_ACK checks Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 12/15] mac80211: make minstrel/pid RC use ieee80211_is_data(fc) Luis R. Rodriguez
2009-06-05  6:24   ` Johannes Berg
2009-06-05  6:34     ` Luis R. Rodriguez
2009-06-05  6:52       ` Johannes Berg
2009-06-05  5:41 ` [PATCH 13/15] iwlwifi: " Luis R. Rodriguez
2009-06-05 14:56   ` Help ath5k José Luis Vargas Araoz
2009-06-05  5:41 ` [PATCH 14/15] mac80211: move management / no-ack frame rate decision to mac80211 Luis R. Rodriguez
2009-06-05  6:28   ` Johannes Berg
2009-06-05  7:42     ` [ath9k-devel] " Jouni Malinen
2009-06-05  7:45       ` Luis R. Rodriguez
2009-06-05  5:41 ` [PATCH 15/15] ath9k: remove rate control wraper Luis R. Rodriguez
2009-06-05  5:52 ` [PATCH 00/15] ath9k/mac80211/iwlwifi: rate control cleanup Luis R. Rodriguez

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=20090609052706.GC22194@vasanth-laptop \
    --to=vasanth@atheros.com \
    --cc=Luis.Rodriguez@atheros.com \
    --cc=ath9k-devel@lists.ath9k.org \
    --cc=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=mcgrof@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).