Search Linux Wireless

Re: [PATCH] ath9k: fix DFS detector synchronization

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

 



On 02/12/2018 01:44 PM, Kalle Valo wrote:
> Timothy Redaelli <tredaelli@xxxxxxxxxx> writes:
> 
>> On Fri, 09 Feb 2018 10:01:09 +0200
>> Kalle Valo <kvalo@xxxxxxxxxxxxxx> wrote:
>>
>>> Timothy Redaelli <tredaelli@xxxxxxxxxx> writes:
>>>
>>>> The code currently syncronize the DFS region only if curchan != 0,
>>>> but hostapd launch DFS before the channel is set and so
>>>> set_dfs_domain is never executed.
>>>>
>>>> CC: Felix Fietkau <nbd@xxxxxxxx>
>>>> Signed-off-by: Timothy Redaelli <tredaelli@xxxxxxxxxx>  
>>>
>>> What kind of bug does this fix? Please describe the symptoms from
>>> user's point of view.
>>
>> With the current code radar detection (CAC) doesn't work on ath9k
>> since "dpd_set_domain" is only called once with NL80211_DFS_UNSET (0) as
>> region and so "dpd_add_pulse" always returns true (radar detected)
>> without doing a real scan.
>>
>> You can test it easily with a kernel built with
>> CONFIG_ATH9K_DFS_CERTIFIED and by using a simple hostapd configuration:
>>
>> interface=wlp1s0
>> hw_mode=a
>> channel=acs_survey
>> chanlist=100 104 108 112 116 120 124 128 132 136 140
>> ieee80211d=1
>> ieee80211h=1
>> country_code=US
>> ieee80211n=1
>> wmm_enabled=1
>> ssid=testwifi
> 
> Any ideas what broke this? Or has it never worked with FCC (US)?
> 
> Anyway, please add this info to the commit log and submit v2.
> 

Hi,

the idea / reasoning behind setting the DFS detector's initial regulatory domain
to UNSET is a fail-safe mechanism to ensure a proper countrycode is set before the
CAC is initiated.

It used to work for a long time, but might broke when the regdb was moved into the
kernel and with that the initialization order between channel and regulatory
domain changed.


Not tested, but patch looks sane.




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

  Powered by Linux