Search Linux Wireless

Re: [ath5k-devel] Race condition in CRDA calls?

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

 



hello!

sorry to revive an old thread, but i finally found the time to continue on 
this. i can reproduce the regdomain intersection problem fairly regularly now. 
it happens on slow boards (soekris net4826), with more than one ath5k card, 
especially under high load. unfortunately this seems to be the case when 
OpenWRT loads, but i can also trigger it by bombarding it with traffic (iperf 
UDP) on the ethernet device, so the IRQ and SIRQ loads together are around 
50%.

On Thu June 17 2010 14:05:32 Luis R. Rodriguez wrote:
> I provided verbose instructions what can be done to further debug this.

the following output mixes kernel log output on the serial and iw event. it's 
a little messed up (lines cut) but i think you can see what's going on:

root@RMR1:/# config.sh reload kernel; iw event -t &

(the config.sh schript only reloads the mac80211, cfg80211 and ath module)

cfg80211: Calling CRDA to update world regulatory domain
root@RMR1:/# cfg80211: World regulatory domain updated:
    (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
    (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
    (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
    (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
    (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
    (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
1284335098.343222: phy #0: regulatory domain change: set to world roaming by 
the wireless core upon initiat

root@RMR1:/# insmod /lib/modules/2.6.32.10/ath5k.ko

ath5k 0000:00:0e.0: registered as 'phy0'
ath5k phy0: Atheros AR5414 chip found (MAC: 0xa5, PHY: 0x61)
ath5k 0000:00:0f.0: registered as 'phy1'
cfg80211: Calling CRDA for country: JP
ath5k phy1: Atheros AR5414 chip found (MAC: 0xa5, PHY: 0x61)
cfg80211: Calling CRDA for country: JP
root@RMR1:/# cfg80211: Current regulatory domain intersected:
    (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
    (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2482000 KHz @ 20000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm)
    (5170000 KHz - 5250000 KHz @ 40000 KHz), (N/A, 2000 mBm)
1284335110.273907: phy #1: regulatory domain change: intersection used due to 
a request made by a driver o1
cfg80211: Current regulatory domain intersected:
    (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
    (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2472000 KHz @ 15000 KHz), (N/A, 2000 mBm)
    (2457000 KHz - 2482000 KHz @ 20000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2482000 KHz @ 8000 KHz), (N/A, 2000 mBm)
    (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm)
    (5170000 KHz - 5250000 KHz @ 40000 KHz), (N/A, 2000 mBm)
1284335114.847761: phy #1: regulatory domain change: intersection used due to 
a request made by a driver o

here again, the output of iw event on a proper console:

root@RMR1:~# 1284335259.046129: phy #1: regulatory domain change: intersection 
used due to a request made by a driver on phy1
1284335263.403515: phy #1: regulatory domain change: intersection used due to 
a request made by a driver on phy1

interesting that phy #1 appears twice...

if there is no intersection problem it looks like this:

1284334386.775218: phy #0: regulatory domain change: set to JP by a driver 
request on phy0
1284334387.020971: phy #1: regulatory domain change: set to JP by a driver 
request on phy1

btw: udev is not in use.

any ideas how to further debug this?

bruno
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux