Date: Thu, 15 Dec 2011 17:03:18 GMT From: Joel Dahl <joel@FreeBSD.org> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/163318: ath(4) stops working Message-ID: <201112151703.pBFH3ION011442@red.freebsd.org> Resent-Message-ID: <201112151710.pBFHA4vH079020@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 163318 >Category: kern >Synopsis: ath(4) stops working >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Dec 15 17:10:03 UTC 2011 >Closed-Date: >Last-Modified: >Originator: Joel Dahl >Release: 10.0-CURRENT >Organization: N/A >Environment: FreeBSD crashbox.vnode.se 10.0-CURRENT FreeBSD 10.0-CURRENT #0: Wed Dec 14 20:11:58 CET 2011 joel@crashbox.vnode.se:/usr/obj/usr/src/sys/GENERIC amd64 >Description: I bought a wireless PCI card for my desktop machine a couple of days ago, it is identified as: joel@crashbox [~] dmesg | grep -i ath ath0: <Atheros 9220> mem 0xf0600000-0xf060ffff irq 20 at device 0.0 on pci16 ath0: Enabling register serialisation ath0: AR9220 mac 128.2 RF5133 phy 13.0 joel@crashbox [~] pciconf -bclv ath0@pci0:16:0:0: class=0x028000 card=0x3a7c1186 chip=0x0029168c rev=0x01 hdr=0x00 vendor = 'Atheros Communications Inc.' device = 'AR922X Wireless Network Adapter' class = network bar [10] = type Memory, range 32, base 0xf0600000, size 65536, enabled cap 01[44] = powerspec 2 supports D0 D3 current D0 I've noticed that somewhere around 4 hours of uptime it stops working. I just get no route to host while trying to ping something. I've played around with ifconfig and the wlan0 interface but rebooting seems to be my only option in order to get it working again. I have compiled my kernel with: options ATH_DEBUG options AH_DEBUG options ATH_DIAGAPI On the console I see the following, but these messages stops as soon as ath stops working: Dec 14 21:29:05 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 14 22:29:04 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 14 22:29:09 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 14 23:29:09 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 14 23:29:14 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 14 23:55:24 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 15 00:55:22 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 15 01:55:24 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Dec 15 01:55:29 crashbox wpa_supplicant[473]: WPA: Group rekeying completed with f8:1e:df:fc:34:2b [GTK=CCMP] Running tcpdump -ni wlan0 -y IEEE802_11_RADIO after ath has died produces no output. I see the following on the console however: wlan0: promiscuous mode enabled wlan0: promiscuous mode disabled wlan0: promiscuous mode enabled taskqueue_drain with the following non-sleepable locks held: exclusive sleep mutex bpf global lock (bpf global lock) r = 0 (0xffffffff8133f6a0) locked @ /usr/src/sys/net/bpf.c:651 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a kdb_backtrace() at kdb_backtrace+0x37 _witness_debugger() at _witness_debugger+0x2c witness_warn() at witness_warn+0x2c6 taskqueue_drain() at taskqueue_drain+0xfd ieee80211_waitfor_parent() at ieee80211_waitfor_parent+0x2b ieee80211_ioctl() at ieee80211_ioctl+0x161 if_setflag() at if_setflag+0x111 ifpromisc() at ifpromisc+0x34 bpf_detachd() at bpf_detachd+0x1c6 bpf_dtor() at bpf_dtor+0x8d devfs_destroy_cdevpriv() at devfs_destroy_cdevpriv+0x8b devfs_close_f() at devfs_close_f+0x54 _fdrop() at _fdrop+0x23 closef() at closef+0x5c kern_close() at kern_close+0x121 amd64_syscall() at amd64_syscall+0x3ac Xfast_syscall() at Xfast_syscall+0xf7 --- syscall (6, FreeBSD ELF64, sys_close), rip = 0x8011c899c, rsp = 0x7fffffffd258, rbp = 0x801807300 --- taskqueue_drain with the following non-sleepable locks held: exclusive sleep mutex bpf global lock (bpf global lock) r = 0 (0xffffffff8133f6a0) locked @ /usr/src/sys/net/bpf.c:651 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a kdb_backtrace() at kdb_backtrace+0x37 _witness_debugger() at _witness_debugger+0x2c witness_warn() at witness_warn+0x2c6 taskqueue_drain() at taskqueue_drain+0xfd ieee80211_waitfor_parent() at ieee80211_waitfor_parent+0x3e ieee80211_ioctl() at ieee80211_ioctl+0x161 if_setflag() at if_setflag+0x111 ifpromisc() at ifpromisc+0x34 bpf_detachd() at bpf_detachd+0x1c6 bpf_dtor() at bpf_dtor+0x8d devfs_destroy_cdevpriv() at devfs_destroy_cdevpriv+0x8b devfs_close_f() at devfs_close_f+0x54 _fdrop() at _fdrop+0x23 closef() at closef+0x5c kern_close() at kern_close+0x121 amd64_syscall() at amd64_syscall+0x3ac Xfast_syscall() at Xfast_syscall+0xf7 --- syscall (6, FreeBSD ELF64, sys_close), rip = 0x8011c899c, rsp = 0x7fffffffd258, rbp = 0x801807300 --- taskqueue_drain with the following non-sleepable locks held: exclusive sleep mutex bpf global lock (bpf global lock) r = 0 (0xffffffff8133f6a0) locked @ /usr/src/sys/net/bpf.c:651 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a kdb_backtrace() at kdb_backtrace+0x37 _witness_debugger() at _witness_debugger+0x2c witness_warn() at witness_warn+0x2c6 taskqueue_drain() at taskqueue_drain+0xfd ieee80211_waitfor_parent() at ieee80211_waitfor_parent+0x51 ieee80211_ioctl() at ieee80211_ioctl+0x161 if_setflag() at if_setflag+0x111 ifpromisc() at ifpromisc+0x34 bpf_detachd() at bpf_detachd+0x1c6 bpf_dtor() at bpf_dtor+0x8d devfs_destroy_cdevpriv() at devfs_destroy_cdevpriv+0x8b devfs_close_f() at devfs_close_f+0x54 _fdrop() at _fdrop+0x23 closef() at closef+0x5c kern_close() at kern_close+0x121 amd64_syscall() at amd64_syscall+0x3ac Xfast_syscall() at Xfast_syscall+0xf7 --- syscall (6, FreeBSD ELF64, sys_close), rip = 0x8011c899c, rsp = 0x7fffffffd258, rbp = 0x801807300 --- taskqueue_drain with the following non-sleepable locks held: exclusive sleep mutex bpf global lock (bpf global lock) r = 0 (0xffffffff8133f6a0) locked @ /usr/src/sys/net/bpf.c:651 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a kdb_backtrace() at kdb_backtrace+0x37 _witness_debugger() at _witness_debugger+0x2c witness_warn() at witness_warn+0x2c6 taskqueue_drain() at taskqueue_drain+0xfd ieee80211_waitfor_parent() at ieee80211_waitfor_parent+0x64 ieee80211_ioctl() at ieee80211_ioctl+0x161 if_setflag() at if_setflag+0x111 ifpromisc() at ifpromisc+0x34 bpf_detachd() at bpf_detachd+0x1c6 bpf_dtor() at bpf_dtor+0x8d devfs_destroy_cdevpriv() at devfs_destroy_cdevpriv+0x8b devfs_close_f() at devfs_close_f+0x54 _fdrop() at _fdrop+0x23 closef() at closef+0x5c kern_close() at kern_close+0x121 amd64_syscall() at amd64_syscall+0x3ac Xfast_syscall() at Xfast_syscall+0xf7 --- syscall (6, FreeBSD ELF64, sys_close), rip = 0x8011c899c, rsp = 0x7fffffffd258, rbp = 0x801807300 --- taskqueue_drain with the following non-sleepable locks held: exclusive sleep mutex bpf global lock (bpf global lock) r = 0 (0xffffffff8133f6a0) locked @ /usr/src/sys/net/bpf.c:651 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a kdb_backtrace() at kdb_backtrace+0x37 _witness_debugger() at _witness_debugger+0x2c witness_warn() at witness_warn+0x2c6 taskqueue_drain() at taskqueue_drain+0xfd ieee80211_waitfor_parent() at ieee80211_waitfor_parent+0x77 ieee80211_ioctl() at ieee80211_ioctl+0x161 if_setflag() at if_setflag+0x111 ifpromisc() at ifpromisc+0x34 bpf_detachd() at bpf_detachd+0x1c6 bpf_dtor() at bpf_dtor+0x8d devfs_destroy_cdevpriv() at devfs_destroy_cdevpriv+0x8b devfs_close_f() at devfs_close_f+0x54 _fdrop() at _fdrop+0x23 closef() at closef+0x5c kern_close() at kern_close+0x121 amd64_syscall() at amd64_syscall+0x3ac Xfast_syscall() at Xfast_syscall+0xf7 --- syscall (6, FreeBSD ELF64, sys_close), rip = 0x8011c899c, rsp = 0x7fffffffd258, rbp = 0x801807300 --- wlan0: promiscuous mode disabled ..and when I reboot, I just briefly can see the following message fly by on the console before the machine reboots: ath0: ath_tx_tid_drain: node 0xffffff80014a2000: tid 16: txq_depth=2, txq_aggr_depth=0, sched=0, paused=0, hwq_depth=0, incomp=0, baw_head=0, baw_tail=0 txa_stat=-1, ni_txseqs=1966 This message is not shown if I reboot while ath is still working. >How-To-Repeat: >Fix: >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112151703.pBFH3ION011442>