2016-07-07 16:49:21

by Krishna Chaitanya

[permalink] [raw]
Subject: ath10k + iw set bitrates is causing FW crash

Hi,

I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).

But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
no crash is observed but it still uses MCS9.

tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339

1) If i disable HW_RATE_CONTROL, will ath10k honor
the mac80211 rates?

2) Please find below the dmesg after the crash.

[ 3879.419737] ath10k_pci 0000:01:00.0: device successfully recovered
[ 3941.919995] wlan0: deauthenticating from 74:d0:2b:41:e4:b4 by local
choice (Reason: 3=DEAUTH_LEAVING)
[ 3953.665725] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 3955.768675] wlan0: authenticate with 74:d0:2b:41:e4:b4
[ 3955.768688] ieee80211_determine_chantype:306 enter..: cwid:3 vht_cwid:3
[ 3955.776460] wlan0: send auth to 74:d0:2b:41:e4:b4 (try 1/3)
[ 3955.777014] wlan0: authenticated
[ 3955.781060] wlan0: associate with 74:d0:2b:41:e4:b4 (try 1/3)
[ 3955.782124] wlan0: RX AssocResp from 74:d0:2b:41:e4:b4 (capab=0x11
status=0 aid=2)
[ 3955.783147] wlan0: associated
[ 3955.783213] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 3959.053601] wlan0: deauthenticating from 74:d0:2b:41:e4:b4 by local
choice (Reason: 3=DEAUTH_LEAVING)
[ 3964.025669] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 3967.104520] wlan0: authenticate with 74:d0:2b:41:e4:b4
[ 3967.104533] ieee80211_determine_chantype:306 enter..: cwid:3 vht_cwid:3
[ 3967.112366] wlan0: send auth to 74:d0:2b:41:e4:b4 (try 1/3)
[ 3967.112905] wlan0: authenticated
[ 3967.113166] wlan0: associate with 74:d0:2b:41:e4:b4 (try 1/3)
[ 3967.114248] wlan0: RX AssocResp from 74:d0:2b:41:e4:b4 (capab=0x11
status=0 aid=2)
[ 3967.115327] wlan0: associated
[ 3967.115357] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 3976.110218] ath10k_pci 0000:01:00.0: firmware crashed! (uuid
bfab5915-ae19-40b1-be67-544d909779ab)
[ 3976.110226] ath10k_pci 0000:01:00.0: qca988x hw2.0 target
0x4100016c chip_id 0x043222ff sub 0000:0000
[ 3976.110228] ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1
tracing 1 dfs 0 testmode 0
[ 3976.110467] ath10k_pci 0000:01:00.0: firmware ver 10.2.4.70.9-2 api
5 features no-p2p,raw-mode crc32 b8d50af5
[ 3976.110472] ath10k_pci 0000:01:00.0: board_file api 1 bmi_id N/A
crc32 bebc7c08
[ 3976.110475] ath10k_pci 0000:01:00.0: htt-ver 2.1 wmi-op 5 htt-op 2
cal otp max-sta 128 raw 0 hwcrypto 1
[ 3976.112483] ath10k_pci 0000:01:00.0: firmware register dump:
[ 3976.112485] ath10k_pci 0000:01:00.0: [00]: 0x4100016C 0x000015B3
0x009BF931 0x00955B31
[ 3976.112487] ath10k_pci 0000:01:00.0: [04]: 0x009BF931 0x00060530
0x00000010 0xFFFFFFFF
[ 3976.112490] ath10k_pci 0000:01:00.0: [08]: 0x0044D9B8 0x0000C001
0x00000000 0x00000005
[ 3976.112492] ath10k_pci 0000:01:00.0: [12]: 0x00000009 0x00000000
0x00957F04 0x00957F12
[ 3976.112494] ath10k_pci 0000:01:00.0: [16]: 0x00958080 0x0094085D
0x00000000 0x00000000
[ 3976.112496] ath10k_pci 0000:01:00.0: [20]: 0x409BF931 0x0040AA44
0x00420854 0x00440198
[ 3976.112498] ath10k_pci 0000:01:00.0: [24]: 0x809BF9A1 0x0040AAA4
0x00789518 0xC09BF931
[ 3976.112500] ath10k_pci 0000:01:00.0: [28]: 0x809B837F 0x0040AAC4
0x0044D9B8 0x000005DC
[ 3976.112502] ath10k_pci 0000:01:00.0: [32]: 0x809B8555 0x0040AAE4
0x0044D9A0 0x00000100
[ 3976.112504] ath10k_pci 0000:01:00.0: [36]: 0x809A0DF5 0x0040AB04
0x0043EAA8 0x0040AD14
[ 3976.112506] ath10k_pci 0000:01:00.0: [40]: 0x809896F9 0x0040AB24
0x0043EAA8 0x0040AD14
[ 3976.112508] ath10k_pci 0000:01:00.0: [44]: 0x809B5ACC 0x0040AB44
0x009C575C 0x0043EAA8
[ 3976.112510] ath10k_pci 0000:01:00.0: [48]: 0x809B1C74 0x0040ADA4
0x00400000 0x00416DEC
[ 3976.112512] ath10k_pci 0000:01:00.0: [52]: 0x809BFB39 0x0040ADE4
0x0040AE08 0x00411F80
[ 3976.112514] ath10k_pci 0000:01:00.0: [56]: 0x809486FA 0x0040AE04
0x00000001 0x00000000
[ 3976.195917] ieee80211 phy0: Hardware restart was requested
[ 3977.561878] ath10k_pci 0000:01:00.0: device successfully recovered
[ 8494.632109] ath10k_pci 0000:01:00.0: firmware crashed! (uuid
5b6f2fe0-1a2c-4485-a7d5-64705ca051a2)
[ 8494.632116] ath10k_pci 0000:01:00.0: qca988x hw2.0 target
0x4100016c chip_id 0x043222ff sub 0000:0000
[ 8494.632119] ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1
tracing 1 dfs 0 testmode 0
[ 8494.632357] ath10k_pci 0000:01:00.0: firmware ver 10.2.4.70.9-2 api
5 features no-p2p,raw-mode crc32 b8d50af5
[ 8494.632362] ath10k_pci 0000:01:00.0: board_file api 1 bmi_id N/A
crc32 bebc7c08
[ 8494.632364] ath10k_pci 0000:01:00.0: htt-ver 2.1 wmi-op 5 htt-op 2
cal otp max-sta 128 raw 0 hwcrypto 1
[ 8494.634373] ath10k_pci 0000:01:00.0: firmware register dump:
[ 8494.634376] ath10k_pci 0000:01:00.0: [00]: 0x4100016C 0x000015B3
0x009BF931 0x00955B31
[ 8494.634378] ath10k_pci 0000:01:00.0: [04]: 0x009BF931 0x00060530
0x00000010 0xFFFFFFFF
[ 8494.634380] ath10k_pci 0000:01:00.0: [08]: 0x0044D9B8 0x0000C001
0x00000000 0x00000005
[ 8494.634382] ath10k_pci 0000:01:00.0: [12]: 0x00000009 0x00000000
0x00957F04 0x00957F12
[ 8494.634384] ath10k_pci 0000:01:00.0: [16]: 0x00958080 0x0094085D
0x00000000 0x00000000
[ 8494.634386] ath10k_pci 0000:01:00.0: [20]: 0x409BF931 0x0040AA44
0x00420854 0x00440198
[ 8494.634388] ath10k_pci 0000:01:00.0: [24]: 0x809BF9A1 0x0040AAA4
0x00789518 0xC09BF931
[ 8494.634390] ath10k_pci 0000:01:00.0: [28]: 0x809B837F 0x0040AAC4
0x0044D9B8 0x000005DC
[ 8494.634392] ath10k_pci 0000:01:00.0: [32]: 0x809B8555 0x0040AAE4
0x0044D9A0 0x00000100
[ 8494.634394] ath10k_pci 0000:01:00.0: [36]: 0x809A0DF5 0x0040AB04
0x0043EAA8 0x0040AD14
[ 8494.634396] ath10k_pci 0000:01:00.0: [40]: 0x809896F9 0x0040AB24
0x0043EAA8 0x0040AD14
[ 8494.634398] ath10k_pci 0000:01:00.0: [44]: 0x809B5ACC 0x0040AB44
0x009C575C 0x0043EAA8
[ 8494.634400] ath10k_pci 0000:01:00.0: [48]: 0x809B1C74 0x0040ADA4
0x00400000 0x00416E0C
[ 8494.634402] ath10k_pci 0000:01:00.0: [52]: 0x809BFB39 0x0040ADE4
0x0040AE08 0x00411F80
[ 8494.634404] ath10k_pci 0000:01:00.0: [56]: 0x809486FA 0x0040AE04
0x00000001 0x00000000
[ 8494.724659] ieee80211 phy0: Hardware restart was requested
[ 8496.090883] ath10k_pci 0000:01:00.0: device successfully recovered



--
Thanks,
Regards,
Chaitanya T K.


2016-07-22 14:48:35

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 22, 2016 at 7:02 PM, Ben Greear <[email protected]> wrote:
>
>
> On 07/22/2016 05:21 AM, Krishna Chaitanya wrote:
>>
>> On Fri, Jul 22, 2016 at 5:29 PM, Manoharan, Rajkumar
>> <[email protected]> wrote:
>>>
>>> [...]
>>>>>>
>>>>>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>>>>>> seeing 0-9, so its
>>>>>> working.
>>>>>>
>>>>>> But i am seeing a weird issues, the moment i give bitrates command,
>>>>>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>>>>>> interface up/down
>>>>>> it doesn't work.
>>>>>
>>>>> After reboot i dont see the "unencrypted" packet issue, i will do
>>>>> some more testing on limiting the rates, currently in my setup its
>>>>> not reaching MCS9 so cannot verify now.
>>>>
>>>> Rajkumar,
>>>>
>>>> I am still not able to make mcs9 work, so i have tried to change the Nss
>>>> to 1
>>>> using iw, but that is not taking affect. This command is not taking
>>>> effect.
>>>>
>>> you mean not able to fix VHT rates alone. am i right? By auto rate mode,
>>> is firmware selecting
>>> mcs9? What is the command used for fixing vht rate?
>>
>> Basically my requirement is to disable MCS8 and 9 for comparison.
>> to check whether ath10k honors the iw command, i used below
>> command. changing to 1SS, but i could see that it still transmits
>> using 2SS. Does your patch ignore these settings except for
>> adhoc mode?
>>
>> iw set bitrates vht-mcs-5 1:0-7
>
>
> You can set the number of spatial streams on the phy device. Search around
> for a 'chainmask' configurable.
>
> In general, stock ath10k firmware does not have full support for setting
> arbitrary bitrates options.
Yes, i know that option but havent tried that. My intention was to limit to MCS7
so in order to verify that commands i tried to change nss.

2016-07-08 15:47:23

by Ben Greear

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On 07/08/2016 08:44 AM, Krishna Chaitanya wrote:
> On Fri, Jul 8, 2016 at 9:12 PM, Ben Greear <[email protected]> wrote:
>> On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:
>>
>>> Also can you please tell me how to make ath10k use minstrel rc, its needed
>>> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
>>> it need more changes?
>>
>>
>> It cannot be done. You have to use whatever rate-ctrl is baked into the
>> firmware.
> Ok, its a good feature to have.
>

It is unlikely to happen anytime soon. It requires significant firmware
modification (and driver too), and probably you would have to add MU-MIMO
support to minstrel if you wanted to support latest ath10k NICs.

Thanks,
Ben

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


2016-07-08 11:56:35

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
<[email protected]> wrote:
>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>
>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>> no crash is observed but it still uses MCS9.
>>>
>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>
>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>> the mac80211 rates?
>>>
>>
> Thanks for reporting the issue. Could you please try with below change?
>
> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> index 5e1cc8f4c43c..cfa7e01a6103 100644
> --- a/drivers/net/wireless/ath/ath10k/mac.c
> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
> return ret;
> }
>
> + if (vif->type != NL80211_IFTYPE_ADHOC)
> + peer_arg.peer_reassoc = reassoc;
> +
> ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
> if (ret) {
> ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",

Thanks Raj, with this fix the rates are 0-7, if i disable then i am
seeing 0-9, so its
working.

But i am seeing a weird issues, the moment i give bitrates command,
ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
interface up/down
it doesn't work.

2016-07-08 15:40:00

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 9:07 PM, Krishna Chaitanya
<[email protected]> wrote:
> On Fri, Jul 8, 2016 at 8:57 PM, Krishna Chaitanya
> <[email protected]> wrote:
>> On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
>> <[email protected]> wrote:
>>> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
>>>
>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>>> index 5e1cc8f4c43c..f7f04bb46fc8 100644
>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
>>> sta->addr, smps, err);
>>> }
>>>
>>> - if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>>> - changed & IEEE80211_RC_NSS_CHANGED) {
>>> + if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>>> + changed & IEEE80211_RC_NSS_CHANGED) &&
>>> + (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
>>> ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
>>> sta->addr);
>>
>> Bottom posting please. I have tried your change i still see the same issue.
>> Right after connecting i see that packets are encrypted but once it
>> unset/set "bitrates" plain packets are seen in sniffer.
>>
>> BTW, i am not rebooting for each driver update, just re-inserting the module,
>> do i need to do a reboot for each driver change?
>
> After reboot i dont see the "unencrypted" packet issue, i will do
> some more testing on limiting the rates, currently in my setup its
> not reaching MCS9 so cannot verify now.
>
> Thanks for the fixes and prompt reply.
> ________________________________________
>>> From: Krishna Chaitanya <[email protected]>
>>> Sent: Friday, July 8, 2016 5:26 PM
>>> To: Manoharan, Rajkumar
>>> Cc: linux-wireless; ath10k
>>> Subject: Re: ath10k + iw set bitrates is causing FW crash
>>>
>>> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
>>> <[email protected]> wrote:
>>>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>>>>
>>>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>>>>> no crash is observed but it still uses MCS9.
>>>>>>
>>>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>>>>
>>>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>>>>> the mac80211 rates?
>>>>>>
>>>>>
>>>> Thanks for reporting the issue. Could you please try with below change?
>>>>
>>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>>>> index 5e1cc8f4c43c..cfa7e01a6103 100644
>>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
>>>> return ret;
>>>> }
>>>>
>>>> + if (vif->type != NL80211_IFTYPE_ADHOC)
>>>> + peer_arg.peer_reassoc = reassoc;
>>>> +
>>>> ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
>>>> if (ret) {
>>>> ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
>>>
>>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>>> seeing 0-9, so its
>>> working.
>>>
>>> But i am seeing a weird issues, the moment i give bitrates command,
>>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>>> interface up/down
>>> it doesn't work.

Also can you please tell me how to make ath10k use minstrel rc, its needed
for comparative purposes? Is disable HW_RATE_CONTROL enough or does
it need more changes?

2016-07-08 10:09:29

by Rajkumar Manoharan

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>
>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>> no crash is observed but it still uses MCS9.
>>
>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>
>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>> the mac80211 rates?
>>
>
Thanks for reporting the issue. Could you please try with below change?

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index 5e1cc8f4c43c..cfa7e01a6103 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
return ret;
}

+ if (vif->type != NL80211_IFTYPE_ADHOC)
+ peer_arg.peer_reassoc = reassoc;
+
ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
if (ret) {
ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",

2016-07-08 15:38:01

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 8:57 PM, Krishna Chaitanya
<[email protected]> wrote:
> On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
> <[email protected]> wrote:
>> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
>>
>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>> index 5e1cc8f4c43c..f7f04bb46fc8 100644
>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
>> sta->addr, smps, err);
>> }
>>
>> - if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>> - changed & IEEE80211_RC_NSS_CHANGED) {
>> + if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
>> + changed & IEEE80211_RC_NSS_CHANGED) &&
>> + (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
>> ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
>> sta->addr);
>
> Bottom posting please. I have tried your change i still see the same issue.
> Right after connecting i see that packets are encrypted but once it
> unset/set "bitrates" plain packets are seen in sniffer.
>
> BTW, i am not rebooting for each driver update, just re-inserting the module,
> do i need to do a reboot for each driver change?

After reboot i dont see the "unencrypted" packet issue, i will do
some more testing on limiting the rates, currently in my setup its
not reaching MCS9 so cannot verify now.

Thanks for the fixes and prompt reply.
________________________________________
>> From: Krishna Chaitanya <[email protected]>
>> Sent: Friday, July 8, 2016 5:26 PM
>> To: Manoharan, Rajkumar
>> Cc: linux-wireless; ath10k
>> Subject: Re: ath10k + iw set bitrates is causing FW crash
>>
>> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
>> <[email protected]> wrote:
>>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>>>
>>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>>>> no crash is observed but it still uses MCS9.
>>>>>
>>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>>>
>>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>>>> the mac80211 rates?
>>>>>
>>>>
>>> Thanks for reporting the issue. Could you please try with below change?
>>>
>>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>>> index 5e1cc8f4c43c..cfa7e01a6103 100644
>>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
>>> return ret;
>>> }
>>>
>>> + if (vif->type != NL80211_IFTYPE_ADHOC)
>>> + peer_arg.peer_reassoc = reassoc;
>>> +
>>> ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
>>> if (ret) {
>>> ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
>>
>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>> seeing 0-9, so its
>> working.
>>
>> But i am seeing a weird issues, the moment i give bitrates command,
>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>> interface up/down
>> it doesn't work.

2016-07-20 10:52:51

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 9:07 PM, Krishna Chaitanya
<[email protected]> wrote:
>
> On Fri, Jul 8, 2016 at 8:57 PM, Krishna Chaitanya
> <[email protected]> wrote:
> > On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
> > <[email protected]> wrote:
> >> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
> >>
> >> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> >> index 5e1cc8f4c43c..f7f04bb46fc8 100644
> >> --- a/drivers/net/wireless/ath/ath10k/mac.c
> >> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> >> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
> >> sta->addr, smps, err);
> >> }
> >>
> >> - if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> >> - changed & IEEE80211_RC_NSS_CHANGED) {
> >> + if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> >> + changed & IEEE80211_RC_NSS_CHANGED) &&
> >> + (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
> >> ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
> >> sta->addr);
> >
> > Bottom posting please. I have tried your change i still see the same issue.
> > Right after connecting i see that packets are encrypted but once it
> > unset/set "bitrates" plain packets are seen in sniffer.
> >
> > BTW, i am not rebooting for each driver update, just re-inserting the module,
> > do i need to do a reboot for each driver change?
>
> After reboot i dont see the "unencrypted" packet issue, i will do
> some more testing on limiting the rates, currently in my setup its
> not reaching MCS9 so cannot verify now.
>
> Thanks for the fixes and prompt reply.



>
> ________________________________________
> >> From: Krishna Chaitanya <[email protected]>
> >> Sent: Friday, July 8, 2016 5:26 PM
> >> To: Manoharan, Rajkumar
> >> Cc: linux-wireless; ath10k
> >> Subject: Re: ath10k + iw set bitrates is causing FW crash
> >>
> >> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
> >> <[email protected]> wrote:
> >>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
> >>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
> >>>>>
> >>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
> >>>>> no crash is observed but it still uses MCS9.
> >>>>>
> >>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
> >>>>>
> >>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
> >>>>> the mac80211 rates?
> >>>>>
> >>>>
> >>> Thanks for reporting the issue. Could you please try with below change?
> >>>
> >>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> >>> index 5e1cc8f4c43c..cfa7e01a6103 100644
> >>> --- a/drivers/net/wireless/ath/ath10k/mac.c
> >>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> >>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
> >>> return ret;
> >>> }
> >>>
> >>> + if (vif->type != NL80211_IFTYPE_ADHOC)
> >>> + peer_arg.peer_reassoc = reassoc;
> >>> +
> >>> ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
> >>> if (ret) {
> >>> ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
> >>
> >> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
> >> seeing 0-9, so its
> >> working.
> >>
> >> But i am seeing a weird issues, the moment i give bitrates command,
> >> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
> >> interface up/down
> >> it doesn't work.
Rajkumar,

I am still not able to make mcs9 work, so i have tried to change the Nss to 1
using iw, but that is not taking affect. This command is not taking effect.

2016-07-08 12:59:34

by Rajkumar Manoharan

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?

diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index 5e1cc8f4c43c..f7f04bb46fc8 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
sta->addr, smps, err);
}

- if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
- changed & IEEE80211_RC_NSS_CHANGED) {
+ if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
+ changed & IEEE80211_RC_NSS_CHANGED) &&
+ (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
sta->addr);

-Rajkumar
________________________________________
From: Krishna Chaitanya <[email protected]>
Sent: Friday, July 8, 2016 5:26 PM
To: Manoharan, Rajkumar
Cc: linux-wireless; ath10k
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
<[email protected]> wrote:
>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>
>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>> no crash is observed but it still uses MCS9.
>>>
>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>
>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>> the mac80211 rates?
>>>
>>
> Thanks for reporting the issue. Could you please try with below change?
>
> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> index 5e1cc8f4c43c..cfa7e01a6103 100644
> --- a/drivers/net/wireless/ath/ath10k/mac.c
> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
> return ret;
> }
>
> + if (vif->type != NL80211_IFTYPE_ADHOC)
> + peer_arg.peer_reassoc = reassoc;
> +
> ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
> if (ret) {
> ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",

Thanks Raj, with this fix the rates are 0-7, if i disable then i am
seeing 0-9, so its
working.

But i am seeing a weird issues, the moment i give bitrates command,
ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
interface up/down
it doesn't work.

2016-07-07 18:43:32

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Thu, Jul 7, 2016 at 10:19 PM, Krishna Chaitanya
<[email protected]> wrote:
> Hi,
>
> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>
> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
> no crash is observed but it still uses MCS9.
>
> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>
> 1) If i disable HW_RATE_CONTROL, will ath10k honor
> the mac80211 rates?
>
> 2) Please find below the dmesg after the crash.
>
> [ 3879.419737] ath10k_pci 0000:01:00.0: device successfully recovered
> [ 3941.919995] wlan0: deauthenticating from 74:d0:2b:41:e4:b4 by local
> choice (Reason: 3=DEAUTH_LEAVING)
> [ 3953.665725] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
> [ 3955.768675] wlan0: authenticate with 74:d0:2b:41:e4:b4
> [ 3955.768688] ieee80211_determine_chantype:306 enter..: cwid:3 vht_cwid:3
> [ 3955.776460] wlan0: send auth to 74:d0:2b:41:e4:b4 (try 1/3)
> [ 3955.777014] wlan0: authenticated
> [ 3955.781060] wlan0: associate with 74:d0:2b:41:e4:b4 (try 1/3)
> [ 3955.782124] wlan0: RX AssocResp from 74:d0:2b:41:e4:b4 (capab=0x11
> status=0 aid=2)
> [ 3955.783147] wlan0: associated
> [ 3955.783213] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
> [ 3959.053601] wlan0: deauthenticating from 74:d0:2b:41:e4:b4 by local
> choice (Reason: 3=DEAUTH_LEAVING)
> [ 3964.025669] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
> [ 3967.104520] wlan0: authenticate with 74:d0:2b:41:e4:b4
> [ 3967.104533] ieee80211_determine_chantype:306 enter..: cwid:3 vht_cwid:3
> [ 3967.112366] wlan0: send auth to 74:d0:2b:41:e4:b4 (try 1/3)
> [ 3967.112905] wlan0: authenticated
> [ 3967.113166] wlan0: associate with 74:d0:2b:41:e4:b4 (try 1/3)
> [ 3967.114248] wlan0: RX AssocResp from 74:d0:2b:41:e4:b4 (capab=0x11
> status=0 aid=2)
> [ 3967.115327] wlan0: associated
> [ 3967.115357] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
> [ 3976.110218] ath10k_pci 0000:01:00.0: firmware crashed! (uuid
> bfab5915-ae19-40b1-be67-544d909779ab)
> [ 3976.110226] ath10k_pci 0000:01:00.0: qca988x hw2.0 target
> 0x4100016c chip_id 0x043222ff sub 0000:0000
> [ 3976.110228] ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1
> tracing 1 dfs 0 testmode 0
> [ 3976.110467] ath10k_pci 0000:01:00.0: firmware ver 10.2.4.70.9-2 api
> 5 features no-p2p,raw-mode crc32 b8d50af5
> [ 3976.110472] ath10k_pci 0000:01:00.0: board_file api 1 bmi_id N/A
> crc32 bebc7c08
> [ 3976.110475] ath10k_pci 0000:01:00.0: htt-ver 2.1 wmi-op 5 htt-op 2
> cal otp max-sta 128 raw 0 hwcrypto 1
> [ 3976.112483] ath10k_pci 0000:01:00.0: firmware register dump:
> [ 3976.112485] ath10k_pci 0000:01:00.0: [00]: 0x4100016C 0x000015B3
> 0x009BF931 0x00955B31
> [ 3976.112487] ath10k_pci 0000:01:00.0: [04]: 0x009BF931 0x00060530
> 0x00000010 0xFFFFFFFF
> [ 3976.112490] ath10k_pci 0000:01:00.0: [08]: 0x0044D9B8 0x0000C001
> 0x00000000 0x00000005
> [ 3976.112492] ath10k_pci 0000:01:00.0: [12]: 0x00000009 0x00000000
> 0x00957F04 0x00957F12
> [ 3976.112494] ath10k_pci 0000:01:00.0: [16]: 0x00958080 0x0094085D
> 0x00000000 0x00000000
> [ 3976.112496] ath10k_pci 0000:01:00.0: [20]: 0x409BF931 0x0040AA44
> 0x00420854 0x00440198
> [ 3976.112498] ath10k_pci 0000:01:00.0: [24]: 0x809BF9A1 0x0040AAA4
> 0x00789518 0xC09BF931
> [ 3976.112500] ath10k_pci 0000:01:00.0: [28]: 0x809B837F 0x0040AAC4
> 0x0044D9B8 0x000005DC
> [ 3976.112502] ath10k_pci 0000:01:00.0: [32]: 0x809B8555 0x0040AAE4
> 0x0044D9A0 0x00000100
> [ 3976.112504] ath10k_pci 0000:01:00.0: [36]: 0x809A0DF5 0x0040AB04
> 0x0043EAA8 0x0040AD14
> [ 3976.112506] ath10k_pci 0000:01:00.0: [40]: 0x809896F9 0x0040AB24
> 0x0043EAA8 0x0040AD14
> [ 3976.112508] ath10k_pci 0000:01:00.0: [44]: 0x809B5ACC 0x0040AB44
> 0x009C575C 0x0043EAA8
> [ 3976.112510] ath10k_pci 0000:01:00.0: [48]: 0x809B1C74 0x0040ADA4
> 0x00400000 0x00416DEC
> [ 3976.112512] ath10k_pci 0000:01:00.0: [52]: 0x809BFB39 0x0040ADE4
> 0x0040AE08 0x00411F80
> [ 3976.112514] ath10k_pci 0000:01:00.0: [56]: 0x809486FA 0x0040AE04
> 0x00000001 0x00000000
> [ 3976.195917] ieee80211 phy0: Hardware restart was requested
> [ 3977.561878] ath10k_pci 0000:01:00.0: device successfully recovered
> [ 8494.632109] ath10k_pci 0000:01:00.0: firmware crashed! (uuid
> 5b6f2fe0-1a2c-4485-a7d5-64705ca051a2)
> [ 8494.632116] ath10k_pci 0000:01:00.0: qca988x hw2.0 target
> 0x4100016c chip_id 0x043222ff sub 0000:0000
> [ 8494.632119] ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1
> tracing 1 dfs 0 testmode 0
> [ 8494.632357] ath10k_pci 0000:01:00.0: firmware ver 10.2.4.70.9-2 api
> 5 features no-p2p,raw-mode crc32 b8d50af5
> [ 8494.632362] ath10k_pci 0000:01:00.0: board_file api 1 bmi_id N/A
> crc32 bebc7c08
> [ 8494.632364] ath10k_pci 0000:01:00.0: htt-ver 2.1 wmi-op 5 htt-op 2
> cal otp max-sta 128 raw 0 hwcrypto 1
> [ 8494.634373] ath10k_pci 0000:01:00.0: firmware register dump:
> [ 8494.634376] ath10k_pci 0000:01:00.0: [00]: 0x4100016C 0x000015B3
> 0x009BF931 0x00955B31
> [ 8494.634378] ath10k_pci 0000:01:00.0: [04]: 0x009BF931 0x00060530
> 0x00000010 0xFFFFFFFF
> [ 8494.634380] ath10k_pci 0000:01:00.0: [08]: 0x0044D9B8 0x0000C001
> 0x00000000 0x00000005
> [ 8494.634382] ath10k_pci 0000:01:00.0: [12]: 0x00000009 0x00000000
> 0x00957F04 0x00957F12
> [ 8494.634384] ath10k_pci 0000:01:00.0: [16]: 0x00958080 0x0094085D
> 0x00000000 0x00000000
> [ 8494.634386] ath10k_pci 0000:01:00.0: [20]: 0x409BF931 0x0040AA44
> 0x00420854 0x00440198
> [ 8494.634388] ath10k_pci 0000:01:00.0: [24]: 0x809BF9A1 0x0040AAA4
> 0x00789518 0xC09BF931
> [ 8494.634390] ath10k_pci 0000:01:00.0: [28]: 0x809B837F 0x0040AAC4
> 0x0044D9B8 0x000005DC
> [ 8494.634392] ath10k_pci 0000:01:00.0: [32]: 0x809B8555 0x0040AAE4
> 0x0044D9A0 0x00000100
> [ 8494.634394] ath10k_pci 0000:01:00.0: [36]: 0x809A0DF5 0x0040AB04
> 0x0043EAA8 0x0040AD14
> [ 8494.634396] ath10k_pci 0000:01:00.0: [40]: 0x809896F9 0x0040AB24
> 0x0043EAA8 0x0040AD14
> [ 8494.634398] ath10k_pci 0000:01:00.0: [44]: 0x809B5ACC 0x0040AB44
> 0x009C575C 0x0043EAA8
> [ 8494.634400] ath10k_pci 0000:01:00.0: [48]: 0x809B1C74 0x0040ADA4
> 0x00400000 0x00416E0C
> [ 8494.634402] ath10k_pci 0000:01:00.0: [52]: 0x809BFB39 0x0040ADE4
> 0x0040AE08 0x00411F80
> [ 8494.634404] ath10k_pci 0000:01:00.0: [56]: 0x809486FA 0x0040AE04
> 0x00000001 0x00000000
> [ 8494.724659] ieee80211 phy0: Hardware restart was requested
> [ 8496.090883] ath10k_pci 0000:01:00.0: device successfully recovered
>
>
+ath10k list.
I am using latest firmware-5.bin from linux-firmware.git.

Also i see below messages during fw loading:

ath10k_pci 0000:01:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
ath10k/pre-cal-pci-0000:01:00.0.bin failed with error -2
ath10k/cal-pci-0000:01:00.0.bin failed with error -2
ath10k_pci 0000:01:00.0: qca988x hw2.0 target 0x4100016c chip_id
0x043222ff sub 0000:0000
ath10k_pci 0000:01:00.0: kconfig debug 1 debugfs 1 tracing 1 dfs 0 testmode 0
ath10k_pci 0000:01:00.0: firmware ver 10.2.4.70.9-2 api 5 features
no-p2p,raw-mode crc32 b8d50af5
ath10k/QCA988X/hw2.0/board-2.bin failed with error -2
ath10k_pci 0000:01:00.0: board_file api 1 bmi_id N/A crc32 bebc7c08
ath10k_pci 0000:01:00.0: htt-ver 2.1 wmi-op 5 htt-op 2 cal otp max-sta
128 raw 0 hwcrypto 1

2016-07-22 12:22:00

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 22, 2016 at 5:29 PM, Manoharan, Rajkumar
<[email protected]> wrote:
> [...]
>> >> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>> >> seeing 0-9, so its
>> >> working.
>> >>
>> >> But i am seeing a weird issues, the moment i give bitrates command,
>> >> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>> >> interface up/down
>> >> it doesn't work.
>>> After reboot i dont see the "unencrypted" packet issue, i will do
>>> some more testing on limiting the rates, currently in my setup its
>>> not reaching MCS9 so cannot verify now.
>> Rajkumar,
>>
>> I am still not able to make mcs9 work, so i have tried to change the Nss to 1
>> using iw, but that is not taking affect. This command is not taking effect.
>>
> you mean not able to fix VHT rates alone. am i right? By auto rate mode, is firmware selecting
> mcs9? What is the command used for fixing vht rate?
Basically my requirement is to disable MCS8 and 9 for comparison.
to check whether ath10k honors the iw command, i used below
command. changing to 1SS, but i could see that it still transmits
using 2SS. Does your patch ignore these settings except for
adhoc mode?

iw set bitrates vht-mcs-5 1:0-7

2016-07-08 15:49:57

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 9:17 PM, Ben Greear <[email protected]> wrote:
> On 07/08/2016 08:44 AM, Krishna Chaitanya wrote:
>>
>> On Fri, Jul 8, 2016 at 9:12 PM, Ben Greear <[email protected]>
>> wrote:
>>>
>>> On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:
>>>
>>>> Also can you please tell me how to make ath10k use minstrel rc, its
>>>> needed
>>>> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
>>>> it need more changes?
>>>
>>>
>>>
>>> It cannot be done. You have to use whatever rate-ctrl is baked into the
>>> firmware.
>>
>> Ok, its a good feature to have.
>>
>
> It is unlikely to happen anytime soon. It requires significant firmware
> modification (and driver too),
Ok, I understand.
>and probably you would have to add MU-MIMO
> support to minstrel if you wanted to support latest ath10k NICs.
It need not be a full pledged one, but 11ac MIMO works should be
good enough (for now).

2016-07-08 15:27:43

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 6:29 PM, Manoharan, Rajkumar
<[email protected]> wrote:
> I think security failures are due to peer unmap & map upon reassoc. Can you please try below change?
>
> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
> index 5e1cc8f4c43c..f7f04bb46fc8 100644
> --- a/drivers/net/wireless/ath/ath10k/mac.c
> +++ b/drivers/net/wireless/ath/ath10k/mac.c
> @@ -5745,8 +5745,9 @@ static void ath10k_sta_rc_update_wk(struct work_struct *wk)
> sta->addr, smps, err);
> }
>
> - if (changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> - changed & IEEE80211_RC_NSS_CHANGED) {
> + if ((changed & IEEE80211_RC_SUPP_RATES_CHANGED ||
> + changed & IEEE80211_RC_NSS_CHANGED) &&
> + (arvif->vif->type == NL80211_IFTYPE_ADHOC)) {
> ath10k_dbg(ar, ATH10K_DBG_MAC, "mac update sta %pM supp rates/nss\n",
> sta->addr);

Bottom posting please. I have tried your change i still see the same issue.
Right after connecting i see that packets are encrypted but once it
unset/set "bitrates" plain packets are seen in sniffer.

BTW, i am not rebooting for each driver update, just re-inserting the module,
do i need to do a reboot for each driver change?
________________________________________
> From: Krishna Chaitanya <[email protected]>
> Sent: Friday, July 8, 2016 5:26 PM
> To: Manoharan, Rajkumar
> Cc: linux-wireless; ath10k
> Subject: Re: ath10k + iw set bitrates is causing FW crash
>
> On Fri, Jul 8, 2016 at 3:39 PM, Manoharan, Rajkumar
> <[email protected]> wrote:
>>>> I am using ath10k driver with qca988x hw2.0 and trying to limit it to use
>>>> VHT MCS0-7 (iw set bitrates vht-mcs-5 2:0-7).
>>>>
>>>> But the command it causing a FW crash, if it disable HW_HAS_RATE_CONTROL
>>>> no crash is observed but it still uses MCS9.
>>>>
>>>> tree: wireless-drivers-next: commit#535633a5ba4ea2504fa6c33176633becf0e59339
>>>>
>>>> 1) If i disable HW_RATE_CONTROL, will ath10k honor
>>>> the mac80211 rates?
>>>>
>>>
>> Thanks for reporting the issue. Could you please try with below change?
>>
>> diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
>> index 5e1cc8f4c43c..cfa7e01a6103 100644
>> --- a/drivers/net/wireless/ath/ath10k/mac.c
>> +++ b/drivers/net/wireless/ath/ath10k/mac.c
>> @@ -2812,6 +2812,9 @@ static int ath10k_station_assoc(struct ath10k *ar,
>> return ret;
>> }
>>
>> + if (vif->type != NL80211_IFTYPE_ADHOC)
>> + peer_arg.peer_reassoc = reassoc;
>> +
>> ret = ath10k_wmi_peer_assoc(ar, &peer_arg);
>> if (ret) {
>> ath10k_warn(ar, "failed to run peer assoc for STA %pM vdev %i: %d\n",
>
> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
> seeing 0-9, so its
> working.
>
> But i am seeing a weird issues, the moment i give bitrates command,
> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
> interface up/down
> it doesn't work.

2016-07-22 11:59:49

by Rajkumar Manoharan

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

[...]
> >> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
> >> seeing 0-9, so its
> >> working.
> >>
> >> But i am seeing a weird issues, the moment i give bitrates command,
> >> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
> >> interface up/down
> >> it doesn't work.
>> After reboot i dont see the "unencrypted" packet issue, i will do
>> some more testing on limiting the rates, currently in my setup its
>> not reaching MCS9 so cannot verify now.
> Rajkumar,
>
> I am still not able to make mcs9 work, so i have tried to change the Nss to 1
> using iw, but that is not taking affect. This command is not taking effect.
>
you mean not able to fix VHT rates alone. am i right? By auto rate mode, is firmware selecting
mcs9? What is the command used for fixing vht rate?

-Rajkumar

2016-07-08 15:45:09

by Krishna Chaitanya

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On Fri, Jul 8, 2016 at 9:12 PM, Ben Greear <[email protected]> wrote:
> On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:
>
>> Also can you please tell me how to make ath10k use minstrel rc, its needed
>> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
>> it need more changes?
>
>
> It cannot be done. You have to use whatever rate-ctrl is baked into the
> firmware.
Ok, its a good feature to have.

2016-07-22 13:32:38

by Ben Greear

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash



On 07/22/2016 05:21 AM, Krishna Chaitanya wrote:
> On Fri, Jul 22, 2016 at 5:29 PM, Manoharan, Rajkumar
> <[email protected]> wrote:
>> [...]
>>>>> Thanks Raj, with this fix the rates are 0-7, if i disable then i am
>>>>> seeing 0-9, so its
>>>>> working.
>>>>>
>>>>> But i am seeing a weird issues, the moment i give bitrates command,
>>>>> ath10k no longer does encryption, link is a WPA2-PSK: AES. Even after
>>>>> interface up/down
>>>>> it doesn't work.
>>>> After reboot i dont see the "unencrypted" packet issue, i will do
>>>> some more testing on limiting the rates, currently in my setup its
>>>> not reaching MCS9 so cannot verify now.
>>> Rajkumar,
>>>
>>> I am still not able to make mcs9 work, so i have tried to change the Nss to 1
>>> using iw, but that is not taking affect. This command is not taking effect.
>>>
>> you mean not able to fix VHT rates alone. am i right? By auto rate mode, is firmware selecting
>> mcs9? What is the command used for fixing vht rate?
> Basically my requirement is to disable MCS8 and 9 for comparison.
> to check whether ath10k honors the iw command, i used below
> command. changing to 1SS, but i could see that it still transmits
> using 2SS. Does your patch ignore these settings except for
> adhoc mode?
>
> iw set bitrates vht-mcs-5 1:0-7

You can set the number of spatial streams on the phy device. Search around
for a 'chainmask' configurable.

In general, stock ath10k firmware does not have full support for setting
arbitrary bitrates options.

Thanks,
Ben

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

2016-07-08 15:42:10

by Ben Greear

[permalink] [raw]
Subject: Re: ath10k + iw set bitrates is causing FW crash

On 07/08/2016 08:39 AM, Krishna Chaitanya wrote:

> Also can you please tell me how to make ath10k use minstrel rc, its needed
> for comparative purposes? Is disable HW_RATE_CONTROL enough or does
> it need more changes?

It cannot be done. You have to use whatever rate-ctrl is baked into the
firmware.

Thanks,
Ben

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