linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Luis R. Rodriguez" <lrodriguez@atheros.com>
To: "Luis R. Rodriguez" <mcgrof@gmail.com>
Cc: Vasanth Thiagarajan <Vasanth.Thiagarajan@Atheros.com>,
	Luis Rodriguez <Luis.Rodriguez@Atheros.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: Mon, 8 Jun 2009 17:58:21 -0700	[thread overview]
Message-ID: <20090609005821.GD380@tesla> (raw)
In-Reply-To: <43e72e890906081726m764f891mc0a46a46b5bc3ac9@mail.gmail.com>

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.

  Luis

  reply	other threads:[~2009-06-09  0:58 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 [this message]
2009-06-09  5:24                 ` Vasanthakumar Thiagarajan
2009-06-09  5:27                   ` Vasanthakumar Thiagarajan
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=20090609005821.GD380@tesla \
    --to=lrodriguez@atheros.com \
    --cc=Luis.Rodriguez@Atheros.com \
    --cc=Vasanth.Thiagarajan@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).