Bug #2685

configuring ath0 freezes the system

Added by xbit almost 3 years ago. Updated 10 months ago.

Target version:
Start date:
Due date:
% Done:



Loading if_ath works, but when configuring the device the system locks up/freezes.

System has been upgraded from 3.6-RELEASE via buildworld, installworld. Kernel is GENERIC_X64_86 and HEAD is 358af07.

Running "ifconfig ath0 up" works.

Then calling "ifconfig wlan0 create wlandev ath0" freezes the system.

I discovered the follwoing kernel message when trying to configure the device using /etc/rc.d/netif.

ath0: _ath_power_restore_power_state.refcount=0?

I also applied the change from via cherry-picking, but no changes.

The 3.6-RELEASE have been used successfully with the same hardware.

Here are the ath related snippets from the dmesg output:

wlan: <802.11 Link Layer>
ath_dfs: WTF module
ath_rate: <SampleRate bit-rate selection algorithm>

ath0: <Atheros 2413> [tentative] mem 0xfebf0000-0xfebfffff irq 20 at
device 5.0 on pci3
ath0: Reserved 0x10000 bytes for rid 0x10 type 3 at 0xfebf0000

ath0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
ath0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps
24Mbps 36Mbps 48Mbps 54Mbps
ath0: AR2413 mac 7.8 RF2413 phy 4.5
ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0056
ath0: Use hw queue 1 for WME_AC_BE traffic
ath0: Use hw queue 0 for WME_AC_BK traffic ath0: Use hw queue 2 for WME_AC_VI traffic
ath0: Use hw queue 3 for WME_AC_VO traffic
ath0: Use hw queue 8 for CAB traffic
ath0: Use hw queue 9 for beacons
ath0: using multicast key search
ath0: <Atheros 2413> [attached!] mem 0xfebf0000-0xfebfffff irq 20 at
device 5.0 on pci3
pci3: <ACPI PCI bus> [attached!] on pcib3
pcib3: <ACPI PCI-PCI bridge> [attached!] at device 20.4 on pci0


#1 Updated by swildner almost 3 years ago

Okay, I'm fairly certain that reverting the most recent work on ath(4) (sleep state code synchronization) should fix it. After all, it added the message you see last.

Can you please verify by applying:

(for example with 'git am <patch>' on the 3.8 branch)

I hope you have some git knowledge to juggle the patches you have locally on your branch.

#2 Updated by xbit almost 3 years ago

Thanks for your help and the patch. That solved the problem - at least for me. I applied the patch to on top of commit 358af07.

If there is something more to test to include the sleep state synchronization, please let me know.

#3 Updated by swildner almost 3 years ago

Can you give us a dump in the failing state?

Backup the working kernel by copying the /boot/kernel directory to /boot/kernel.bak. Then, revert the patch, recompile/install the kernel and bring it to the point where it hangs. Then, hit CTL-ALT-ESC to break into ddb. At the "db>" prompt, do "call dumpsys" (it should dump to disk then and countdown numbers on the console). When it is finished do "reset" to reboot. At the loader menu, it will then give you an option (I think it's "b") to boot the previously backed up working kernel.bak. Upon coming up, it will save the dump to /var/crash. Then, tar/xz the kern.XX and vmcore.XX with the highest number from /var/crash and put it up somewhere from where it can be downloaded.

#4 Updated by xbit almost 3 years ago

I would like to provide that crash dump, but unfortunately my USB keyboard stops works as soon as the system freezes. Neither CTRL-ALT-ESC nor using the NUMLOCK key works.

Is there any other way to trigger creating a crash dump? Will a non-USB keyboard (PS/2) work?

#5 Updated by xbit almost 3 years ago

I will upgrade my system to 3.8.1 and will test again without the reverted changes. I will also try to create the crash dump, but I expected this won't work due to the not-working USB keyboard.

#6 Updated by xbit over 2 years ago

  • Target version changed from 3.8.0 to 4.0.x

Everything worked fine with the patch reverted.

But with 4.0.0rc.10.g61c13 the problem shows up again. I do not see any output on the console (only the hardware address of the ath0 device), then the system freezes.

I tried to cherry-pick the commit that reverts the old changes mentioned in the patch, but that failed with conflicts. I did not try to solve these conflicts, just aborted the cherry-pick.

Are there any changes I can revert on 4.0.0? Or any other suggestions to find the reason for the freeze?


#7 Updated by xbit almost 2 years ago

I have checked this issue again and noticed some strange behaviour.

If I change several BIOS (AMI BIOS) settings, the freeze occurs. Below is a list of the settings and how they need to be set.

- Advanced Clock Calibration: Disabled
- PCIPnp: Active State Power Management: Enabled
- Northbridge Internal Graphics: FB Location: Below 4GB
- PCI Express: NB-SB VC1 Traffic Support: Enabled

Whenever I change one of these options, the systems freezes and restarts when running 'wpa_supplicant -Dbsd -iwlan0 -c/etc/wpa_supplicant.conf'.

With the settings above, I can run wpa_supplicant and dhclient and the network seems usables. I just made a quick ping to another machine.

The most strange behaviour is when I start wpa_supplicant in the background (with &), the system immediately hangs and resets.

I upgraded yesterday to 4.0.5.

#8 Updated by xbit over 1 year ago

Seems to be fixed with 4.2.x. The device can be configured and used as before.

I don't know if 4.0.x is still affected and if this matters.

So I think the issues resolved.

#9 Updated by swildner 10 months ago

  • Status changed from New to Closed

Looks like this one was fixed. Closing.

Also available in: Atom PDF