Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Ticket #1835 (new defect)

Opened 14 years ago

Last modified 12 years ago

Card stops working and ksoftirqd_CPU0 uses all CPU

Reported by: wondra@volny.cz Assigned to:
Priority: minor Milestone:
Component: madwifi: other Version: v0.9.4
Keywords: Cc:
Patch is attached: 0 Pending:

Description (Last modified by mrenzmann)

Several times a day, the Atheros card stops working and ksoftirqd_CPU0 starts using all CPU. Traffic doesn't seem to affect this (much).

The PC doesn't crash, though, and the problem can be resolved by doing ifdown ath0 && sleep 10 && ifup ath0. It hangs sooner if I remove the delay.

There is nothing in syslog.

The only parameters set are: mode AP, essid, restricted wep key and channel (2.4GHz) and the interface is added to a bridge. Kernel is version 2.4.25 with MOSIX, hostap, ppscsi and ITE8212 patches. Distribution Debian 3.1. Machine is Pentium PRO. Card vendor is Well. Driver versions below.

There are also 2 3com NICs and an ITE IDE controller on the PCI bus and another 3com, a sound card and a video card on ISA, but I've double-checked the machine for any conflicts.

The radio environment is rather noisy.

Perhaps I should mention that the PCI bus is ver 2.1 and I'm using a computer quality DC-DC converter to supply 3.3V to the card. But even if it's a non-standard setup, I think that the driver should either honourably crash or catch and fix the error.

Thanks in advance for a resolution and I'll be glad to help debug the problem.

wondra

ath_hal: 0.9.18.0 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
wlan: 0.9.4
ath_pci: 0.9.4
ath_rate_sample: 1.2 (0.9.4)
wifi0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
wifi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: turboG rates: 6Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: H/W encryption support: WEP AES AES_CCM TKIP
wifi0: mac 10.5 phy 6.1 radio 6.3
wifi0: Use hw queue 1 for WME_AC_BE traffic
wifi0: Use hw queue 0 for WME_AC_BK traffic
wifi0: Use hw queue 2 for WME_AC_VI traffic
wifi0: Use hw queue 3 for WME_AC_VO traffic
wifi0: Use hw queue 8 for CAB traffic
wifi0: Use hw queue 9 for beacons
wifi0: Atheros 5212: mem=0xe0000000, irq=10

Change History

03/10/08 06:04:51 changed by mrenzmann

  • version set to v0.9.4.
  • description changed.

Try if trunk solves the issue. If not, you could try to remove the other cards one by one, to see whether there is some (unspotted) conflict. In addition, you should try the steps used in the if{up,down} configuration manually to see which of them actually causes the issue.

(follow-up: ↓ 6 ) 03/10/08 08:44:40 changed by wondra@volny.cz

The "current trunk" version doesn't even compile. Are those errors ignorable??

I'll try debugging hardware later this week. wondra

gcc-2.95 -D__KERNEL__ -I/usr/src/linux-2.4.25/include -Wall -Wstrict-prototypes
-Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -
mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src
/linux-2.4.25/include/linux/modversions.h -include ./../include/compat.h -I./../
include -I./.. -I./../ath_hal -I./../hal -DTARGET='"i386-elf"' -Werror -DAH_BYTE
_ORDER=AH_LITTLE_ENDIAN -fomit-frame-pointer -DATH_SUPERG_FF=1 -DATH_SUPERG_DYNT
URBO=1 -DATH_TURBO_SCAN=1 -DATH_SUPERG_XR=1 -DATH_CAP_TPC=1 -DOPT_AH_H=\"public/
i386-elf.opt_ah.h\" -nostdinc -iwithprefix include -DKBUILD_BASENAME=ieee80211_i
nput  -DEXPORT_SYMTAB -c ieee80211_input.c
ieee80211_input.c: In function `ieee80211_decap':
ieee80211_input.c:1144: unknown field `type_snap' specified in initializer
ieee80211_input.c:1144: unknown field `control' specified in initializer
cc1: warnings being treated as errors
ieee80211_input.c:1144: warning: missing braces around initializer
ieee80211_input.c:1144: warning: (near initialization for `snap_hdr.llc_un')
ieee80211_input.c:1145: unknown field `llc_un' specified in initializer
ieee80211_input.c:1145: unknown field `type_snap' specified in initializer
ieee80211_input.c:1145: unknown field `org_code' specified in initializer
ieee80211_input.c:1145: warning: braces around scalar initializer
ieee80211_input.c:1145: warning: (near initialization for `snap_hdr.llc_un.type_u.format_id')
ieee80211_input.c:1145: warning: excess elements in scalar initializer
ieee80211_input.c:1145: warning: (near initialization for `snap_hdr.llc_un.type_u.format_id')
ieee80211_input.c:1145: warning: excess elements in scalar initializer
ieee80211_input.c:1145: warning: (near initialization for `snap_hdr.llc_un.type_u.format_id')
make[3]: *** [ieee80211_input.o] Error 1
make[3]: Leaving directory `/tmp/madwifi-ng-r2717-20071002/net80211'
make[2]: *** [_mod_/tmp/madwifi-ng-r2717-20071002/net80211] Error 2
make[2]: Leaving directory `/usr/src/linux-2.4.25'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/tmp/madwifi-ng-r2717-20071002/net80211'
make: *** [modules] Error 1

03/11/08 10:46:12 changed by wondra@volny.cz

The errors are obviously not ignorable. It stops compiling even if I remove -Werror and I really don't understand the code.

The command which brings the card to life is ifconfig ath0 up.

(follow-up: ↓ 7 ) 04/14/08 20:06:56 changed by albus

Hello,

I have exactly the same problem, ksoftirqd0/1 take 100% of my cpu and my network down. I do "/etc/init.d/network restart" to resolve the problem.

I tested with trunk, but always the same...

I'm using madwifi 0.94 on debian lenny 2.6.24-1-amd64 with netgear wpn311

the problem occures 5 to 10 times a day, network is useless

06/25/08 00:56:17 changed by svintus@gmail.com

I have the same problem, but it only occurs when I use skype. I'm using madwifi 0.94 on Ubuntu 8.04 2.6.24-19-generic x86_64 with DLink DWL-G510.

(in reply to: ↑ 2 ) 06/25/08 03:49:27 changed by mentor

Replying to wondra@volny.cz:

The "current trunk" version doesn't even compile. Are those errors ignorable??

This is not related to this issue. If you can't compile trunk then ask on the regular support channels.

(This ticked is for tracking a specific problem. It is not your personal support area.)

(in reply to: ↑ 4 ) 06/25/08 03:55:10 changed by mentor

Replying to albus:

I tested with trunk, but always the same...

Would you confirm which versions?

Also, are you running an SMP system?

08/13/08 16:13:33 changed by frederico@marques.cx

Hi. I have the same problem. I'm using madwifi 0.9.4 with Kernel 2.6.17-10-386 (Ubuntu). The interface is configured with adhoc, 2.4 Ghz, uapsd and wmm disabled. Sometimes (once per day, or sometimes once per week or month) the card stops completely and ksoftirqd_CPU0 eats all the CPU. I have no warnings on syslog/kernel log. The "fix" is to issue a ifconfig athX down ; ifconfig athX up. I'm using several nodes on a Mesh setup, all using madwifi with x86 hardware. I really would love to help to debug this. Any news or directions for grabbing more info that could help madwifi developers? Thanks.

08/13/08 16:26:36 changed by frederico@marques.cx

Forgot to tell that the radio environment is a bit noisy. The madwifi card usually interacts with other madwifi nodes, but also Broadcom Based ones (Linksys WRT54GL with Freifunk Firmware).

08/19/08 00:20:34 changed by frederico@marques.cx

Ok, more info. It happened again today, and it was at the same time on my Mesh, at 2 nodes running madwifi 0.9.4 and Voyage Linux. One is a running 2.6.20 and the other with 2.6.23. Both are voyage boxes. I have no errors on kernel log or syslog. Could be related to the Stuck Beacon issue? My /proc/interrupts were still displaying activity on wifi0 during the lock up. I've made a tcpdump and saw the traffic coming in. But I could not find any mac addresses (the traffic was not going out of wifi0).

09/29/08 20:43:22 changed by zeitgeist

I have the same problem also in a very noisy environment. Wlan is down at least twice a day. ksoftirc eats up all cpu until I disconnect and reconnect with networkmanager. I'm using Ubuntu 8.04 with Kernel 2.6.24-19-generic. I use a self compiled madwifi 0.9.4.

dmesg
[31814.159755] wifi0: rx FIFO overrun; resetting
[32223.695411] ADDRCONF(NETDEV_UP): ath0: link is not ready

09/05/09 20:23:02 changed by nenad@panline.net

Same thing happens with 0.9.4 on older OpenWRT (2.4.32 kernel) on ASUS WL500g platform (MIPS). It happens on long-distance links (30-40km) in cases of some radio turbulences (not necessary noise, we have solitary links of 35km). In my case, board is still working, but ksoftirqd_CPU0 uses 80-95% of CPU time and RTT rises to 500-1000-2000ms (instead of 2-3ms in without this problem).