kern/176104: iwn0: iwn_intr: fatal firmware error
Anton Shterenlikht
mexas at bristol.ac.uk
Wed Feb 13 11:40:01 UTC 2013
>Number: 176104
>Category: kern
>Synopsis: iwn0: iwn_intr: fatal firmware error
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Feb 13 11:40:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator: Anton Shterenlikht
>Release: FreeBSD 10.0-CURRENT ia64
>Organization:
University of Bristol
>Environment:
FreeBSD zzz 10.0-CURRENT FreeBSD 10.0-CURRENT #4 r246552: Sun Feb 10 00:37:33 GM
T 2013 root at zzz:/usr/obj/usr/src/sys/T61p amd64
>Description:
At some, seemingly random points, the iwn driver
will stop working with this message:
iwn0: iwn_intr: fatal firmware error
firmware error log:
error type = "NMI_INTERRUPT_WDG" (0x00000004)
program counter = 0x0000046C
source line = 0x000000D0
error data = 0x0000000207030000
branch link = 0x00008370000004C2
interrupt link = 0x000006DA000018B8
time = 200035
driver status:
tx ring 0: qid=0 cur=0 queued=0
tx ring 1: qid=1 cur=0 queued=0
tx ring 2: qid=2 cur=0 queued=0
tx ring 3: qid=3 cur=2 queued=1
tx ring 4: qid=4 cur=67 queued=0
tx ring 5: qid=5 cur=0 queued=0
tx ring 6: qid=6 cur=0 queued=0
tx ring 7: qid=7 cur=0 queued=0
tx ring 8: qid=8 cur=0 queued=0
tx ring 9: qid=9 cur=0 queued=0
tx ring 10: qid=10 cur=0 queued=0
tx ring 11: qid=11 cur=0 queued=0
tx ring 12: qid=12 cur=0 queued=0
tx ring 13: qid=13 cur=0 queued=0
tx ring 14: qid=14 cur=0 queued=0
tx ring 15: qid=15 cur=0 queued=0
rx ring: cur=13
After that a restart of the network is
required, i.e. /etc/rc.d/netif restart
It seems sometimes flipping the radio
switch a few times will lead to the same
problem.
Sometimes restarting network doesn't help,
and in some cases I have to restart it
3-4-5 times before the iwn works again:
wlan0: link state changed to DOWN
wlan0: link state changed to UP
wlan0: link state changed to DOWN
wlan0: link state changed to UP
iwn0: iwn_intr: fatal firmware error
firmware error log:
error type = "NMI_INTERRUPT_WDG" (0x00000004)
program counter = 0x0000046C
source line = 0x000000D0
error data = 0x0000000207430000
branch link = 0x00008370000004C2
interrupt link = 0x000006DA000018B8
time = 2357321991
driver status:
tx ring 0: qid=0 cur=19 queued=0
tx ring 1: qid=1 cur=0 queued=0
tx ring 2: qid=2 cur=0 queued=0
tx ring 3: qid=3 cur=79 queued=0
tx ring 4: qid=4 cur=220 queued=0
tx ring 5: qid=5 cur=0 queued=0
tx ring 6: qid=6 cur=0 queued=0
tx ring 7: qid=7 cur=0 queued=0
tx ring 8: qid=8 cur=0 queued=0
tx ring 9: qid=9 cur=0 queued=0
tx ring 10: qid=10 cur=0 queued=0
tx ring 11: qid=11 cur=0 queued=0
tx ring 12: qid=12 cur=0 queued=0
tx ring 13: qid=13 cur=0 queued=0
tx ring 14: qid=14 cur=0 queued=0
tx ring 15: qid=15 cur=0 queued=0
rx ring: cur=12
in6_purgeaddr: err=65, destination address delete failed
wlan0: link state changed to DOWN
wlan0: Ethernet address: 00:21:5c:50:68:c3
iwn0: iwn_intr: fatal firmware error
firmware error log:
error type = "NMI_INTERRUPT_WDG" (0x00000004)
program counter = 0x0000046C
source line = 0x000000D0
error data = 0x0000000202030000
branch link = 0x00005CEE000004C2
interrupt link = 0x000006DE00007386
time = 10259240
driver status:
tx ring 0: qid=0 cur=0 queued=0
tx ring 1: qid=1 cur=0 queued=0
tx ring 2: qid=2 cur=0 queued=0
tx ring 3: qid=3 cur=1 queued=0
tx ring 4: qid=4 cur=41 queued=0
tx ring 5: qid=5 cur=0 queued=0
tx ring 6: qid=6 cur=0 queued=0
tx ring 7: qid=7 cur=0 queued=0
tx ring 8: qid=8 cur=0 queued=0
tx ring 9: qid=9 cur=0 queued=0
tx ring 10: qid=10 cur=0 queued=0
tx ring 11: qid=11 cur=0 queued=0
tx ring 12: qid=12 cur=0 queued=0
tx ring 13: qid=13 cur=0 queued=0
tx ring 14: qid=14 cur=0 queued=0
tx ring 15: qid=15 cur=0 queued=0
rx ring: cur=38
in6_purgeaddr: err=65, destination address delete failed
wlan0: Ethernet address: 00:21:5c:50:68:c3
iwn0: iwn_intr: fatal firmware error
firmware error log:
error type = "NMI_INTERRUPT_WDG" (0x00000004)
program counter = 0x0000046C
source line = 0x000000D0
error data = 0x0000000207030000
branch link = 0x00008370000004C2
interrupt link = 0x000006DA000018B8
time = 200035
driver status:
tx ring 0: qid=0 cur=0 queued=0
tx ring 1: qid=1 cur=0 queued=0
tx ring 2: qid=2 cur=0 queued=0
tx ring 3: qid=3 cur=2 queued=1
tx ring 4: qid=4 cur=67 queued=0
tx ring 5: qid=5 cur=0 queued=0
tx ring 6: qid=6 cur=0 queued=0
tx ring 7: qid=7 cur=0 queued=0
tx ring 8: qid=8 cur=0 queued=0
tx ring 9: qid=9 cur=0 queued=0
tx ring 10: qid=10 cur=0 queued=0
tx ring 11: qid=11 cur=0 queued=0
tx ring 12: qid=12 cur=0 queued=0
tx ring 13: qid=13 cur=0 queued=0
tx ring 14: qid=14 cur=0 queued=0
tx ring 15: qid=15 cur=0 queued=0
rx ring: cur=0
in6_purgeaddr: err=65, destination address delete failed
wlan0: Ethernet address: 00:21:5c:50:68:c3
wlan0: link state changed to UP
wlan0: link state changed to DOWN
iwn0: iwn_intr: fatal firmware error
firmware error log:
error type = "NMI_INTERRUPT_WDG" (0x00000004)
program counter = 0x0000046C
source line = 0x000000D0
error data = 0x0000000207430000
branch link = 0x00008370000004C2
interrupt link = 0x000006DE000018B8
time = 11958181
driver status:
tx ring 0: qid=0 cur=229 queued=0
tx ring 1: qid=1 cur=0 queued=0
tx ring 2: qid=2 cur=0 queued=0
tx ring 3: qid=3 cur=17 queued=1
tx ring 4: qid=4 cur=109 queued=0
tx ring 5: qid=5 cur=0 queued=0
tx ring 6: qid=6 cur=0 queued=0
tx ring 7: qid=7 cur=0 queued=0
tx ring 8: qid=8 cur=0 queued=0
tx ring 9: qid=9 cur=0 queued=0
tx ring 10: qid=10 cur=0 queued=0
tx ring 11: qid=11 cur=0 queued=0
tx ring 12: qid=12 cur=0 queued=0
tx ring 13: qid=13 cur=0 queued=0
tx ring 14: qid=14 cur=0 queued=0
tx ring 15: qid=15 cur=0 queued=0
rx ring: cur=15
in6_purgeaddr: err=65, destination address delete failed
wlan0: Ethernet address: 00:21:5c:50:68:c3
wlan0: link state changed to UP
iwn0: iwn_intr: fatal firmware error
firmware error log:
error type = "NMI_INTERRUPT_WDG" (0x00000004)
program counter = 0x0000046C
source line = 0x000000D0
error data = 0x0000000207030000
branch link = 0x00008370000004C2
interrupt link = 0x000006DE000018B8
time = 1412239977
driver status:
tx ring 0: qid=0 cur=41 queued=0
tx ring 1: qid=1 cur=0 queued=0
tx ring 2: qid=2 cur=0 queued=0
tx ring 3: qid=3 cur=15 queued=0
tx ring 4: qid=4 cur=81 queued=0
tx ring 5: qid=5 cur=0 queued=0
tx ring 6: qid=6 cur=0 queued=0
tx ring 7: qid=7 cur=0 queued=0
tx ring 8: qid=8 cur=0 queued=0
tx ring 9: qid=9 cur=0 queued=0
tx ring 10: qid=10 cur=0 queued=0
tx ring 11: qid=11 cur=0 queued=0
tx ring 12: qid=12 cur=0 queued=0
tx ring 13: qid=13 cur=0 queued=0
tx ring 14: qid=14 cur=0 queued=0
tx ring 15: qid=15 cur=0 queued=0
rx ring: cur=53
in6_purgeaddr: err=65, destination address delete failed
wlan0: link state changed to DOWN
wlan0: Ethernet address: 00:21:5c:50:68:c3
wlan0: link state changed to UP
>How-To-Repeat:
Build a kernel with
device iwn # Intel 4965/1000/5000/6000 wireless NICs.
device iwn4965fw
Initialise the wlan device:
iwn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290
ether 00:21:5c:50:68:c3
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
status: associated
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 00:21:5c:50:68:c3
inet 172.21.222.82 netmask 0xfffffc00 broadcast 255.255.255.255
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: IEEE 802.11 Wireless Ethernet OFDM/36Mbps mode 11g
status: associated
ssid eduroam channel 1 (2412 MHz 11g) bssid 00:3a:98:62:cd:a0
country US authmode WPA2/802.11i privacy ON deftxkey UNDEF
AES-CCM 3:128-bit txpower 14 bmiss 10 scanvalid 450 bgscan
bgscanintvl 300 bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS
wme roaming MANUAL
Then use the wireless and see.
Maybe it crumbles more under load.
Try flipping the radio switch on and off
few times.
>Fix:
This has been discussed briefly in this
thread:
http://lists.freebsd.org/pipermail/freebsd-mobile/2013-February/012748.html
It seems 9.1-release is also affected.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list