Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 31 Oct 2012 06:35:50 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r242392 - head/sys/dev/ath/ath_rate/sample
Message-ID:  <201210310635.q9V6Zo2Y068832@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Wed Oct 31 06:35:50 2012
New Revision: 242392
URL: http://svn.freebsd.org/changeset/base/242392

Log:
  I've had some feedback that CCK rates are more reliable than MCS 0
  in some very degenerate conditions.
  
  However, until ath_rate_form_aggr() is taught to not form aggregates
  if ANY selected rate is non-MCS, this can't yet be enabled.
  
  So, just add a comment.

Modified:
  head/sys/dev/ath/ath_rate/sample/sample.c

Modified: head/sys/dev/ath/ath_rate/sample/sample.c
==============================================================================
--- head/sys/dev/ath/ath_rate/sample/sample.c	Wed Oct 31 06:27:58 2012	(r242391)
+++ head/sys/dev/ath/ath_rate/sample/sample.c	Wed Oct 31 06:35:50 2012	(r242392)
@@ -272,12 +272,29 @@ pick_sample_rate(struct sample_softc *ss
 			continue;
 		}
 
+		/*
+		 * The following code stops trying to sample
+		 * non-MCS rates when speaking to an MCS node.
+		 * However, at least for CCK rates in 2.4GHz mode,
+		 * the non-MCS rates MAY actually provide better
+		 * PER at the very far edge of reception.
+		 *
+		 * However! Until ath_rate_form_aggr() grows
+		 * some logic to not form aggregates if the
+		 * selected rate is non-MCS, this won't work.
+		 *
+		 * So don't disable this code until you've taught
+		 * ath_rate_form_aggr() to drop out if any of
+		 * the selected rates are non-MCS.
+		 */
+#if 1
 		/* if the node is HT and the rate isn't HT, don't bother sample */
 		if ((an->an_node.ni_flags & IEEE80211_NODE_HT) &&
 		    (rt->info[rix].phy != IEEE80211_T_HT)) {
 			mask &= ~((uint64_t) 1<<rix);
 			goto nextrate;
 		}
+#endif
 
 		/* this bit-rate is always worse than the current one */
 		if (sn->stats[size_bin][rix].perfect_tx_time > current_tt) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210310635.q9V6Zo2Y068832>