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 #2205 (new defect)

Opened 13 years ago

Last modified 11 years ago

AP hangs after spurious APIC interrupt

Reported by: michael.voorhaen@gmail.com Assigned to:
Priority: critical Milestone:
Component: madwifi: driver Version: trunk
Keywords: Cc:
Patch is attached: 0 Pending: 0

Description

I have a setup running on an ALIX machine with voyage-lenny where I have the ALIX running as an AP. After a while I get the following output in dmesg:

NETDEV WATCHDOG: wifi0: transmit timed out
------------[ cut here ]------------
WARNING: at net/sched/sch_generic.c:223 dev_watchdog+0x8a/0xe2()
Modules linked in: iptable_filter ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack ip_tables x_tables wlan_wep wlan_scan_sta wlan_tkip wlan_xauth wlan_scan_ap ipv6 aufs exportfs hostap_pci hostap ieee80211_crypt natsemi ath_rate_sample snd_cs5535audio snd_ac97_codec ath_pci snd_pcm pcspkr snd_timer cs5535_gpio wlan snd soundcore ac97_bus snd_page_alloc ath_hal(P) ide_disk ata_generic libata ohci_hcd ehci_hcd amd74xx ide_pci_generic usbcore ide_core via_rhine mii bitrev crc32
Pid: 0, comm: swapper Tainted: P 2.6.26-486-voyage #1
[<c0112958>] warn_on_slowpath+0x40/0x65
[<c0127f20>] tick_handle_periodic+0xc/0x58
[<d0129b9c>] zz00050ae3+0xdc/0xf0 [ath_hal]
[<d01a81a9>] ath_set_ack_bitrate+0x161/0x168 [ath_pci]
[<d0190c13>] ath_reset+0x223/0x263 [ath_pci]
[<c0248d2e>] dev_watchdog+0x0/0xe2
[<c0248d2e>] dev_watchdog+0x0/0xe2
[<c0248db8>] dev_watchdog+0x8a/0xe2
[<c0119338>] run_timer_softirq+0xfc/0x15d
[<c011637f>] __do_softirq+0x35/0x75
[<c01163e1>] do_softirq+0x22/0x26
[<c0116547>] irq_exit+0x25/0x5d
[<c0104f35>] do_IRQ+0x50/0x60
[<c010187b>] default_idle+0x0/0x38
[<c0103973>] common_interrupt+0x23/0x30
[<c010187b>] default_idle+0x0/0x38
[<c01018a0>] default_idle+0x25/0x38
[<c01017e7>] cpu_idle+0x48/0x75
=======================
---[ end trace 375a74947e487380 ]---
wifi0: ath_bstuck_tasklet: Stuck beacon; resetting (beacon miss count: 11)
wifi0: ath_bstuck_tasklet: Stuck beacon; resetting (beacon miss count: 11)
wifi0: ath_bstuck_tasklet: Stuck beacon; resetting (beacon miss count: 11)
wifi0: ath_bstuck_tasklet: Stuck beacon; resetting (beacon miss count: 11)
wifi0: ath_bstuck_tasklet: Stuck beacon; resetting (beacon miss count: 11)

this repeats for a while and then ends in 

spurious APIC interrupt on CPU#0, should never happen

We have tested this using 0.9.4 and the latest svn and the behaviour remains the same. We also upgraded to the latest kernel (2.6.27) which was to no avail.

Booting with noapic or any other grub option that would disable APIC, resulted in the same error message.

We are also seeing frequent periods where the AP just doesn't respond, sometimes followed by a Rx buffer overflow.

Has anyone else seen or reported this error or something similar. I know that the Stuck Beacon error is/has been an issue for some time, but I'm not sure if this is related.

Change History

12/12/08 15:40:31 changed by michael.voorhaen@gmail.com

Sry about the duplicate ticket, it is the same as #2204

05/16/09 12:06:03 changed by anonymous

I found a possible hint on forums.fedoraforum.org (thread 146463) The author was kind enough to write down what did to solve his problem, maybe it'll help (ie add "apm=force noapic acpi=off pci=noacpi" to grub's parameter list)

I have the same setup (Alix 2d3 with debian stable which is lenny now, using 2.6.26-1 and madwifi-modules-2.6.26-1). I'm having the same problem, and i just added the parameters to grub and i'll see if it prevents my PA from freezing when the interrupt comes up.

05/16/09 12:17:36 changed by michael.voorhaen@gmail.com

It would be great if this would fix this this problem, we eventually returned from using voyage 0.6 to using 0.5.2 because we didn't experience this problem (probably due to the older kernel).

05/31/09 14:46:02 changed by Thunder.m

Hi, I have the same problem with stable versin 0.9.4, solution with noacpi parameters to kernel is not working.

dmesg output: [ 39.442311] wifi3: Atheros 5212: mem=0xf3020000, irq=19 [ 39.442326] ACPI: PCI Interrupt 0000:02:0b.0[A] -> Link [APC1] -> GSI 16 (level, low) -> IRQ 16 [ 39.442343] proc_dir_entry 'wifi%d' already registered [ 39.442346] Pid: 15658, comm: modprobe Tainted: P 2.6.26.8 #1 [ 39.442351] [<c019f3a4>] proc_register+0xf3/0x11f [ 39.442357] [<c019f552>] proc_mkdir_mode+0x2b/0x3d [ 39.442360] [<c014d380>] register_handler_proc+0xae/0xc2 [ 39.442368] [<c014c1f7>] setup_irq+0x198/0x1b5 [ 39.442372] [<f88929ae>] ath_intr+0x0/0xab2 [ath_pci] [ 39.442381] [<c014c2a0>] request_irq+0x8c/0xa9 [ 39.442385] [<f889a5e2>] ath_pci_probe+0x201/0x330 [ath_pci] [ 39.442394] [<c02ceca2>] pci_device_probe+0x36/0x55 [ 39.442399] [<c031cb10>] driver_probe_device+0x9d/0x12f [ 39.442404] [<c031cbd9>] driver_attach+0x37/0x55 [ 39.442407] [<c031c591>] bus_for_each_dev+0x31/0x57 [ 39.442411] [<c031c9c3>] driver_attach+0x11/0x13 [ 39.442414] [<c031cba2>] driver_attach+0x0/0x55 [ 39.442417] [<c031c01a>] bus_add_driver+0x91/0x1a7 [ 39.442421] [<c031cd3d>] driver_register+0x7d/0xd6 [ 39.442424] [<c02cee5c>] pci_register_driver+0x32/0x5e [ 39.442428] [<f883502a>] init_ath_pci+0x2a/0x4a [ath_pci] [ 39.442435] [<c013b913>] sys_init_module+0x1894/0x1a17 [ 39.442444] [<f8872000>] hostap_is_eapol_frame+0x0/0x92 [hostap] [ 39.442454] [<c015f585>] mmap_region+0x385/0x44f [ 39.442457] [<c0123a21>] proc_dointvec_minmax+0x0/0x3d [ 39.442466] [<c01037f1>] sysenter_past_esp+0x6a/0x99 [ 39.442472] ======================= [ 40.090356] wifi4: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps [ 40.090362] wifi4: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps [ 40.090365] wifi4: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps [ 40.090373] wifi4: turboG rates: 6Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps [ 40.090378] wifi4: H/W encryption support: WEP AES AES_CCM TKIP [ 40.090381] wifi4: mac 10.5 phy 6.1 radio 6.3 [ 40.090383] wifi4: Use hw queue 1 for WME_AC_BE traffic [ 40.090385] wifi4: Use hw queue 0 for WME_AC_BK traffic [ 40.090387] wifi4: Use hw queue 2 for WME_AC_VI traffic [ 40.090389] wifi4: Use hw queue 3 for WME_AC_VO traffic [ 40.090390] wifi4: Use hw queue 8 for CAB traffic [ 40.090392] wifi4: Use hw queue 9 for beacons [ 40.090761] wifi4: Atheros 5212: mem=0xf3030000, irq=16 [ 40.097072] ACPI: PCI Interrupt 0000:01:08.0[A] -> Link [APC3] -> GSI 18 (level, low) -> IRQ 18

05/31/09 14:46:46 changed by anonymous

Sorry, I forget to use block formating form dmesg output:

[   39.442311] wifi3: Atheros 5212: mem=0xf3020000, irq=19
[   39.442326] ACPI: PCI Interrupt 0000:02:0b.0[A] -> Link [APC1] -> GSI 16 (level, low) -> IRQ 16
[   39.442343] proc_dir_entry 'wifi%d' already registered
[   39.442346] Pid: 15658, comm: modprobe Tainted: P          2.6.26.8 #1
[   39.442351]  [<c019f3a4>] proc_register+0xf3/0x11f
[   39.442357]  [<c019f552>] proc_mkdir_mode+0x2b/0x3d
[   39.442360]  [<c014d380>] register_handler_proc+0xae/0xc2
[   39.442368]  [<c014c1f7>] setup_irq+0x198/0x1b5
[   39.442372]  [<f88929ae>] ath_intr+0x0/0xab2 [ath_pci]
[   39.442381]  [<c014c2a0>] request_irq+0x8c/0xa9
[   39.442385]  [<f889a5e2>] ath_pci_probe+0x201/0x330 [ath_pci]
[   39.442394]  [<c02ceca2>] pci_device_probe+0x36/0x55
[   39.442399]  [<c031cb10>] driver_probe_device+0x9d/0x12f
[   39.442404]  [<c031cbd9>] __driver_attach+0x37/0x55
[   39.442407]  [<c031c591>] bus_for_each_dev+0x31/0x57
[   39.442411]  [<c031c9c3>] driver_attach+0x11/0x13
[   39.442414]  [<c031cba2>] __driver_attach+0x0/0x55
[   39.442417]  [<c031c01a>] bus_add_driver+0x91/0x1a7
[   39.442421]  [<c031cd3d>] driver_register+0x7d/0xd6
[   39.442424]  [<c02cee5c>] __pci_register_driver+0x32/0x5e
[   39.442428]  [<f883502a>] init_ath_pci+0x2a/0x4a [ath_pci]
[   39.442435]  [<c013b913>] sys_init_module+0x1894/0x1a17
[   39.442444]  [<f8872000>] hostap_is_eapol_frame+0x0/0x92 [hostap]
[   39.442454]  [<c015f585>] mmap_region+0x385/0x44f
[   39.442457]  [<c0123a21>] proc_dointvec_minmax+0x0/0x3d
[   39.442466]  [<c01037f1>] sysenter_past_esp+0x6a/0x99
[   39.442472]  =======================
[   40.090356] wifi4: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
[   40.090362] wifi4: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
[   40.090365] wifi4: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
[   40.090373] wifi4: turboG rates: 6Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
[   40.090378] wifi4: H/W encryption support: WEP AES AES_CCM TKIP
[   40.090381] wifi4: mac 10.5 phy 6.1 radio 6.3
[   40.090383] wifi4: Use hw queue 1 for WME_AC_BE traffic
[   40.090385] wifi4: Use hw queue 0 for WME_AC_BK traffic
[   40.090387] wifi4: Use hw queue 2 for WME_AC_VI traffic
[   40.090389] wifi4: Use hw queue 3 for WME_AC_VO traffic
[   40.090390] wifi4: Use hw queue 8 for CAB traffic
[   40.090392] wifi4: Use hw queue 9 for beacons
[   40.090761] wifi4: Atheros 5212: mem=0xf3030000, irq=16
[   40.097072] ACPI: PCI Interrupt 0000:01:08.0[A] -> Link [APC3] -> GSI 18 (level, low) -> IRQ 18

(follow-up: ↓ 7 ) 09/11/09 17:44:24 changed by sebastian.criado@gmail.com

Using WPA2 and high traffic.

NETDEV WATCHDOG: wifi0: transmit timed out
 ------------[ cut here ]------------
WARNING: at net/sched/sch_generic.c:223 ()
Modules linked in: gpio_buttons input_polldev leds_gpio ath_ahb wlan_xauth wlan_wep wlan_tkip wlan_ccmp wlan_acl ath_rate_minstrel ath_hal(P) wlan_scan_stan
Call Trace:[<80048a68>][<80048a68>][<8006155c>][<c024e2b4>][<c01f6c38>][<c01f68dc>][<c0251fb4>][<c01f53a0>][<c0201c10>][<c0201b9c>][<8006244c>][<801a20a4>]]
 ---[ end trace 8756e0c39b0cd704 ]---

(in reply to: ↑ 6 ) 09/11/09 17:47:21 changed by anonymous

Replying to sebastian.criado@gmail.com:

Using WPA2 and high traffic. NETDEV WATCHDOG: wifi0: transmit timed out ------------[ cut here ]------------ WARNING: at net/sched/sch_generic.c:223 () Modules linked in: gpio_buttons input_polldev leds_gpio ath_ahb wlan_xauth wlan_wep wlan_tkip wlan_ccmp wlan_acl ath_rate_minstrel ath_hal(P) wlan_scan_stan Call Trace:[<80048a68>][<80048a68>][<8006155c>][<c024e2b4>][<c01f6c38>][<c01f68dc>][<c0251fb4>][<c01f53a0>][<c0201c10>][<c0201b9c>][<8006244c>][<801a20a4>]] ---[ end trace 8756e0c39b0cd704 ]---

Sory, using madwifi 3314 and hal 2009-05-08

ath_hal: module license 'Proprietary' taints kernel.
ath_hal: 2009-05-08 (AR5212, AR5312, RF5111, RF5112, RF2316, RF2317, REGOPS_FUNC, TX_DESC_SWAP, XR)
ath_rate_minstrel: Minstrel automatic rate control algorithm 1.2 (trunk)
ath_rate_minstrel: look around rate set to 10%
ath_rate_minstrel: EWMA rolloff level set to 75%
ath_rate_minstrel: max segment size in the mrr set to 6000 us
wlan: mac acl policy registered
ath_ahb: trunk
Atheros HAL provided by OpenWrt, DD-WRT and MakSat Technologies
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
ath_ahb: wifi0: Atheros 2315 WiSoC: mem=0xb0000000, irq=3
gpio-buttons driver version 0.1.1

06/02/10 19:06:53 changed by anonymous

I have the same problem using linux 2.6.34 and madwifi r4129:

2010-06-02T08:13:08-04:-30 r1 kernel: ------------[ cut here ]------------
2010-06-02T08:13:08-04:-30 r1 kernel: WARNING: at net/sched/sch_generic.c:256 dev_watchdog+0x16d/0x179()
2010-06-02T08:13:08-04:-30 r1 kernel: NETDEV WATCHDOG: wifi0 (ath_pci): transmit queue 0 timed out
2010-06-02T08:13:08-04:-30 r1 kernel: Modules linked in: wlan_tkip wlan_xauth act_police sch_ingress cls_u32 sch_sfq sch_htb xt_state xt_multiport iptable_filter iptable_mangle ipt_MASQUERADE iptable_nat nf_nat nf_conntrack_ipv4 nf_conntrack nf_defrag_ipv4 ip_tables wlan_scan_ap bridge stp llc dahdi_echocan_mg2 wctc4xxp dahdi_transcode wctdm dahdi ath_rate_sample ath_pci wlan ath_hal
2010-06-02T08:13:08-04:-30 r1 kernel: Pid: 0, comm: swapper Not tainted 2.6.34 #3
2010-06-02T08:13:08-04:-30 r1 kernel: Call Trace:
2010-06-02T08:13:08-04:-30 r1 kernel: [<c101f110>] ? warn_slowpath_common+0x5d/0x80
2010-06-02T08:13:08-04:-30 r1 kernel: [<c11bda9e>] ? dev_watchdog+0x16d/0x179
2010-06-02T08:13:08-04:-30 r1 kernel: [<c101f166>] ? warn_slowpath_fmt+0x26/0x2a
2010-06-02T08:13:08-04:-30 r1 kernel: [<c11bda9e>] ? dev_watchdog+0x16d/0x179
2010-06-02T08:13:08-04:-30 r1 kernel: [<c1038f06>] ? tick_dev_program_event+0x2a/0x119
2010-06-02T08:13:08-04:-30 r1 kernel: [<c1039034>] ? tick_program_event+0xf/0x11
2010-06-02T08:13:08-04:-30 r1 kernel: [<c10313a9>] ? hrtimer_interrupt+0x154/0x239
2010-06-02T08:13:08-04:-30 r1 kernel: [<c11bd931>] ? dev_watchdog+0x0/0x179
2010-06-02T08:13:08-04:-30 r1 kernel: [<c1026dc0>] ? run_timer_softirq+0xd5/0x15f
2010-06-02T08:13:08-04:-30 r1 kernel: [<c1023008>] ? __do_softirq+0x60/0xc6
2010-06-02T08:13:08-04:-30 r1 kernel: [<c102309c>] ? do_softirq+0x2e/0x30
2010-06-02T08:13:08-04:-30 r1 kernel: [<c10039c8>] ? do_IRQ+0x3a/0x85
2010-06-02T08:13:08-04:-30 r1 kernel: [<c1002b69>] ? common_interrupt+0x29/0x30
2010-06-02T08:13:08-04:-30 r1 kernel: [<c121007b>] ? pfkey_add+0x5f6/0x7ff
2010-06-02T08:13:08-04:-30 r1 kernel: [<c10077d2>] ? default_idle+0x25/0x38
2010-06-02T08:13:08-04:-30 r1 kernel: [<c1001902>] ? cpu_idle+0x19/0x2f
2010-06-02T08:13:08-04:-30 r1 kernel: [<c131061d>] ? start_kernel+0x222/0x225
2010-06-02T08:13:08-04:-30 r1 kernel: ---[ end trace 4c080c5d1a6bf261 ]---

How can we solve this?