On 10/04/2012 05:29 PM, Ben Greear wrote:
> On 10/04/2012 05:01 PM, Adrian Chadd wrote:
>> On 4 October 2012 15:29, Ben Greear <[email protected]> wrote:
>>> More fun with attenuation and ath9k:
>>>
>>> It seems that the tx-rates do not properly go to lower speeds,
>>> at least in some cases.
>>>
>>> I enabled lots of attenuation, and it gets into a state where the
>>> station drops rates down to around 100Mbps, but the AP side stays with
>>> high tx-rate.  From sniffing, it seems that STA starts sending ARPs to AP,
>>> and AP responds, but packet is never received on the STA.  I *do* see lots
>>> of rx-crc errors on the station.
>>>
>>> If I force the rate to be MCS-0, then it runs just fine.  I haven't yet
>>> tried forcing it to run at higher rates.
>>
>> Erm. Start with the rate control output (sysfs?) and see what the
>> pass/fail rates are per TX rate.
>
> It seems I was using the built-in ath9k rate control logic (or,
> at least it was compiled in).
>
> I tried changing to minstrel_ht, and then it works fine at lower
> speeds, but max speed is only about 230Mbps, when I was getting 330Mbps
> max before.

After more fiddling, I got it working fine in the upload direction,
but download is stuck at 230Mbps.  I think it may not relate to the
rate-control alg though, as changing it did not help.

With regard to the ath9k-rate-control feature...any reason we
can't add a patch like this and then allow users to set mac80211's
default alg to ath9k_rate_control?  I think this would let us easily
change between rate algs without recompiling the kernel...

diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/at
index b182f93..3ee6e36 100644
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -739,7 +739,7 @@ void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee802
         sc->ant_tx = hw->wiphy->available_antennas_tx;

  #ifdef CONFIG_ATH9K_RATE_CONTROL
-       hw->rate_control_algorithm = "ath9k_rate_control";
+       /* hw->rate_control_algorithm = "ath9k_rate_control"; */
  #endif

         if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_2GHZ)

Thanks,
Ben


-- 
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com

_______________________________________________
ath9k-devel mailing list
[email protected]
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to