<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/sys/dev/ath/ath_rate/sample/sample.c, branch stable/10</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=stable%2F10</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=stable%2F10'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2013-02-27T04:33:06Z</updated>
<entry>
<title>I give up - just throw the EWMA update into the normal update_stats()</title>
<updated>2013-02-27T04:33:06Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2013-02-27T04:33:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ee563d630b65f71d2d1a2dd7c084040c945d1be0'/>
<id>urn:sha1:ee563d630b65f71d2d1a2dd7c084040c945d1be0</id>
<content type='text'>
routine.

There were still corner cases where the EWMA update stats are being
called on a rix which didn't have an intermediary stats update; thus
no packets were counted against it.  Sigh.

This should fix the crashes I've been seeing on recent -HEAD.
</content>
</entry>
<entry>
<title>Update the EWMA statistics for each intermediary rate as well as the final</title>
<updated>2013-02-26T10:24:49Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2013-02-26T10:24:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=38fda92679e6b688e18d12435e82b97f699a8549'/>
<id>urn:sha1:38fda92679e6b688e18d12435e82b97f699a8549</id>
<content type='text'>
rate.

This fixes two things:

* The intermediary rates now also have their EWMA values changed;
* The existing code was using the wrong value for longtries - so the
  EWMA stats were only adjusted for the first rate and not subsequent
  rates in a MRR setup.

TODO:

* Merge the EWMA updates into update_stats() now..
</content>
</entry>
<entry>
<title>I've had some feedback that CCK rates are more reliable than MCS 0</title>
<updated>2012-10-31T06:35:50Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-10-31T06:35:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=bf57b7b2ce917f824aadacdcdb900c21c0ebf3e6'/>
<id>urn:sha1:bf57b7b2ce917f824aadacdcdb900c21c0ebf3e6</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>Improve performance of the Sample rate algorithm on 802.11n networks.</title>
<updated>2012-09-17T01:09:17Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-09-17T01:09:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e69db8df7d773db5d6efd99fb5165d7d777b626a'/>
<id>urn:sha1:e69db8df7d773db5d6efd99fb5165d7d777b626a</id>
<content type='text'>
* Don't treat high percentage failures as "sucessive failures" - high
  MCS rates are very picky and will quite happily "fade" from low
  to high failure % and back again within a few seconds.  If they really
  don't work, the aggregate will just plain fail.

* Only sample MCS rates +/- 3 from the current MCS.  Sample will back off
  quite quickly, so there's no need to sample _all_ MCS rates between
  a high MCS rate and MCS0; there may be a lot of them.

* Modify the smoothing rate to be 75% rather than 95% - it's more adaptive
  but it comes with a cost of being slightly less stable at times.
  A per-node, hysterisis behaviour would be nicer.
</content>
</entry>
<entry>
<title>Improve the sample rate logging.</title>
<updated>2012-08-27T20:30:07Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-08-27T20:30:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f6fd8c7af8e8645fbad6b8474cda6d834d7c05f5'/>
<id>urn:sha1:f6fd8c7af8e8645fbad6b8474cda6d834d7c05f5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix build</title>
<updated>2012-08-15T15:53:27Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2012-08-15T15:53:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=a055e7ceb48de82e8b682f6036e99704383072dd'/>
<id>urn:sha1:a055e7ceb48de82e8b682f6036e99704383072dd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Extend the sample mask from 32 bits to 64 bits.</title>
<updated>2012-08-15T07:10:10Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-08-15T07:10:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=193bfa21eae2c3cc1660fa6aca85ee2e7a9ccf5d'/>
<id>urn:sha1:193bfa21eae2c3cc1660fa6aca85ee2e7a9ccf5d</id>
<content type='text'>
This is required to support &gt; MCS15 as more than 32 bit rate entries are
suddenly available.

This is quite messy - instead of doing typecasts at each mask operation,
this should be migrated to use a macro and have that do the typecast.
</content>
</entry>
<entry>
<title>Fix a case of "mis-located braces".</title>
<updated>2012-08-01T00:18:02Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-08-01T00:18:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=9f579ef85daa47b50a6c6c2477c812804339a15e'/>
<id>urn:sha1:9f579ef85daa47b50a6c6c2477c812804339a15e</id>
<content type='text'>
PR:		kern/170302
</content>
</entry>
<entry>
<title>Allow 802.11n hardware to support multi-rate retry when RTS/CTS is</title>
<updated>2012-07-31T23:54:15Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-07-31T23:54:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=af01710118a6bf87eff0141f5dd46fd1c487e9b1'/>
<id>urn:sha1:af01710118a6bf87eff0141f5dd46fd1c487e9b1</id>
<content type='text'>
enabled.

The legacy (pre-802.11n) hardware doesn't support this - although
the AR5212 era hardware supports MRR, it doesn't have all the bits
needed to support MRR + RTS/CTS.  The AR5416 and later support
a packet duration and RTS/CTS flags per rate scenario, so we should
support it.

Tested:

* AR9280, STA

PR:		kern/170302
</content>
</entry>
<entry>
<title>Introduce a rate table TLV so rate table statistics consumers</title>
<updated>2012-07-20T02:17:48Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2012-07-20T02:17:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=be4f96a6b7ff02315471a3d5544c7a37d59e12cf'/>
<id>urn:sha1:be4f96a6b7ff02315471a3d5544c7a37d59e12cf</id>
<content type='text'>
know how to map rix -&gt; rate code.
</content>
</entry>
</feed>
