Search Linux Wireless

Re: Help debugging iwldvm / ath10k stalls

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 26, 2014 at 11:47 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
> On Mon, May 26, 2014 at 11:13 AM, Emmanuel Grumbach <egrumbach@xxxxxxxxx> wrote:
>>>>>>
>>>>>> diff --git a/drivers/net/wireless/iwlwifi/dvm/power.c
>>>>>> b/drivers/net/wireless/iwlwifi/dvm/power.c
>>>>>> index f2c1439..e5a6b70 100644
>>>>>> --- a/drivers/net/wireless/iwlwifi/dvm/power.c
>>>>>> +++ b/drivers/net/wireless/iwlwifi/dvm/power.c
>>>>>> @@ -288,6 +288,9 @@ static void iwl_power_build_cmd(struct iwl_priv *priv,
>>>>>>         bool enabled = priv->hw->conf.flags & IEEE80211_CONF_PS;
>>>>>>         int dtimper;
>>>>>>
>>>>>> +       iwl_power_sleep_cam_cmd(priv, cmd);
>>>>>> +       return;
>>>>>> +
>>>>>>         dtimper = priv->hw->conf.ps_dtim_period ?: 1;
>>>>>>
>>>>>>         if (priv->wowlan)
>>>>>
>>>>> This patch has survived for about 15 minutes on 3.15-rc.  It certainly
>>>>> has some effect: pinging from the AP to the STA now takes a consistent
>>>>> ~3.8ms instead of taking varying amounts of time between 5 and 200 ms
>>>>> or so.
>>>>>
>>>>> I wonder if this is something 802.11n/802.11ac-specific?  I remember
>>>>> having all kinds of problems with 802.11n on this laptop that were
>>>>> resolved by turning off 11n or turning off power saving.
>>>>>
>>>>
>>>> well... my patch really turns off power saving. The hard way.
>>>> But since you are having issues - I guess I'll post it and disable
>>>> power save for these devices. Note that today most of the power save
>>>> features are disabled anyway.
>>>
>>> Would it make sense to do this only when connected to a VHT-supporting
>>> AP or whatever AP feature is probably triggering the problem?
>>
>> I am not sure it is related to some "VHT / whatever" feature. From
>> your logs, I'd say this bug could have happened with any AP. It is
>> down there in the PCI layer.
>>
>>>
>>> *sigh* I'd just plug in a new PCIe wireless card, except that I think
>>> that my evil BIOS will refuse to boot if I do that.
>>>
>> I can recommend 7260 :)
>
> http://www.thinkwiki.org/wiki/Problem_with_unauthorized_MiniPCI_network_card
>
> I'm not sure how I feel about flashing my BIOS with random things off
> the internet :(
>
>> Before you do that, can you check this one?
>>
>> diff --git a/drivers/net/wireless/iwlwifi/dvm/power.c
>> b/drivers/net/wireless/iwlwifi/dvm/power.c
>> index f2c1439..047112c 100644
>> --- a/drivers/net/wireless/iwlwifi/dvm/power.c
>> +++ b/drivers/net/wireless/iwlwifi/dvm/power.c
>> @@ -292,6 +292,8 @@ static void iwl_power_build_cmd(struct iwl_priv *priv,
>>
>>         if (priv->wowlan)
>>                 iwl_static_sleep_cmd(priv, cmd, IWL_POWER_INDEX_5, dtimper);
>> +       if (!enabled)
>> +               iwl_power_sleep_cam_cmd(priv, cmd);
>>         else if (!priv->lib->no_idle_support &&
>>                  priv->hw->conf.flags & IEEE80211_CONF_IDLE)
>>                 iwl_static_sleep_cmd(priv, cmd, IWL_POWER_INDEX_5, 20);
>> @@ -299,9 +301,7 @@ static void iwl_power_build_cmd(struct iwl_priv *priv,
>>                 /* in thermal throttling low power state */
>>                 iwl_static_sleep_cmd(priv, cmd,
>>                     iwl_tt_current_power_mode(priv), dtimper);
>> -       } else if (!enabled)
>> -               iwl_power_sleep_cam_cmd(priv, cmd);
>> -       else if (priv->power_data.debug_sleep_level_override >= 0)
>> +       } else if (priv->power_data.debug_sleep_level_override >= 0)
>>                 iwl_static_sleep_cmd(priv, cmd,
>>
>> priv->power_data.debug_sleep_level_override,
>>                                      dtimper);
>>
>> This is the final version I want to send.
>
> I'll test it tonight.  I'm away from both the network and the laptop right now.

No good :(  I got the same issue again, but it still sames rarer than unpatched.

It looks like your patch allows both:

iwl_static_sleep_cmd(priv, cmd, IWL_POWER_INDEX_5, dtimper);

and

iwl_static_sleep_cmd(priv, cmd, IWL_POWER_INDEX_5, 20);

I don't know whether that's a problem.

Also, is this bad?

iwlwifi 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control

lspci seems to think that L1 is enabled (see attached logs).

--Andy

Attachment: iwl_stall_2.txt.xz
Description: application/xz


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux