Bug 240803 - iwl3945 driver oops in ipw_set_rxon_channel
iwl3945 driver oops in ipw_set_rxon_channel
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
rawhide
i686 Linux
medium Severity medium
: ---
: ---
Assigned To: John W. Linville
Will Woods
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2007-05-21 16:07 EDT by Jason Tibbitts
Modified: 2007-11-30 17:12 EST (History)
4 users (show)

See Also:
Fixed In Version: 2.6.22.1-27.fc7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-07-24 09:51:20 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)
Oops and kernel messages leading up to it. (9.17 KB, text/plain)
2007-05-21 16:07 EDT, Jason Tibbitts
no flags Details

  None (edit)
Description Jason Tibbitts 2007-05-21 16:07:29 EDT
I've posted this to the fedora-kernel mailing list and discussed it on IRC but I
figured it would be best to actually get it into bugzilla.

Essentially, all kernels that I've tried (starting with test4, 2.6.21-1.3104)
oops as soon as NetworkManager inspects the card.  I include a few snippets from
the oops below; I will attach a complete oops from the 3169 kernel.  I tested
the just-build 3175 kernel and the oops is unchanged.  It may also be worth
noting that the ipw3945 driver (v1.2.1) will see networks but will not actually
associate with any of them (even public ones) on this hardware.

The machine is a Sony Vaio TXN17P, Smolt ID 4875ced9-b86b-43c2-a7b8-8ee039016996.

iwl3945: Can't stop Rx DMA.
BUG: unable to handle kernel NULL pointer dereference at virtual address 00000005

[<f8f84492>] ipw_set_rxon_channel+0x22/0xf8 [iwl3945]
[<f8f966ce>] d_config_interface+0x219/0x25e [iwl3945]
[<f8f618cc>] __ieee80211_if_config+0xf9/0x105 [mac80211]
[<f8f65ba4>] ieee80211_open+0x2ce/0x30c [mac80211]
[<c05a582e>] dev_open+0x2b/0x62
[<c05a426d>] dev_change_flags+0x47/0xe4
Comment 1 Jason Tibbitts 2007-05-21 16:07:29 EDT
Created attachment 155127 [details]
Oops and kernel messages leading up to it.
Comment 2 Jason Tibbitts 2007-05-21 16:16:54 EDT
It should also be said that updating to the latest iwl3045 firmware
(iwlwifi-firmware-2.14.3-2) made no difference, although I did not make any
attempt to formally test multiple firmwares with multiple kernels.
Comment 3 Jason Tibbitts 2007-05-23 12:40:18 EDT
I see the same oops with the 3189 kernel.

For grins I pulled the latest iwlwifi git tree and built and installed the module.

It no longer oopses, but it doesn't really do much of anything either.  The
kernel messages show the usual channel list, and then when NetworkManager
starts, I get:

iwl3945: Microcode SW error detected.  Restarting 0x82000000.
iwl3945: Error Reply type 0x0000003A cmd REPLY_RXON_ASSOC (0x11) seq 0x0408 ser
0x00000000
iwl3945: Error setting RXON_ASSOC configuration (-5).
iwl3945: ipw going down
iwl3945: Can't stop Rx DMA.
iwl3945: Grabbing access while already held at line 825.
iwl3945: Microcode SW error detected.  Restarting 0x82000000.
iwl3945: Error Reply type 0x000004EB cmd REPLY_TX_PWR_TABLE_CMD (0x97) seq
0x0402 ser 0x00000000
iwl3945: ipw going down
iwl3945: Can't stop Rx DMA.
iwl3945: Grabbing access while already held at line 825.
iwl3945: ipw going down

At this point, "iwlist scan" will hang for 15 seconds or so trying to scan
wlan0, and then show:

wlan0     Failed to read scan data : Resource temporarily unavailable

So at this point the oops would be solved if Fedora updated to a later iwlwifi
tree, but I'd still be without wireless.  I'm happy to pursue this upstream if
the RH folks think that would be better.  I have no problems building custom
kernels or testing out patches, and I have this laptop for experimentation for
another month now.
Comment 4 Jason Tibbitts 2007-05-23 18:57:13 EDT
FYI, the output from the current 3191 kernel is identical to what I posted in
comment #3.  So I suppose this bug could be closed since the oops is fixed,
although if so I'd appreciate guidance on how to best follow up on the lack of
functionality I'm seeing.
Comment 5 Jason Tibbitts 2007-05-23 19:06:05 EDT
Sorry for spamming.

I should add that in the middle of the iwl3945 output quoted in comment #3,
there's also the following backtrace which might be related:

iwl3945: Grabbing access while already held at line 825.
iwl3945: Microcode SW error detected.  Restarting 0x82000000.
iwl3945: Error Reply type 0x000004EB cmd REPLY_TX_PWR_TABLE_CMD (0x97) seq
0x0402 ser 0x00000000
iwl3945: ipw going down
iwl3945: Can't stop Rx DMA.
iwl3945: Grabbing access while already held at line 825.
e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex
ACPI: PCI Interrupt 0000:00:02.0[A] -> GSI 16 (level, low) -> IRQ 16
[drm] Initialized drm 1.1.0 20060810
[drm] Initialized i915 1.6.0 20060119 on minor 0
BUG: warning at kernel/softirq.c:138/local_bh_enable() (Not tainted)
 [<c042b2ef>] local_bh_enable+0x45/0x92
 [<c06036b7>] cond_resched_softirq+0x2c/0x42
 [<c059d5d0>] release_sock+0x54/0xa3
 [<c05c9428>] tcp_sendmsg+0x91b/0xa0c
 [<c05e1bb9>] inet_sendmsg+0x3b/0x45
 [<c059af34>] sock_aio_write+0xf9/0x105
 [<c0476035>] do_sync_write+0xc7/0x10a
 [<c0437265>] autoremove_wake_function+0x0/0x35
 [<c047688e>] vfs_write+0xbc/0x154
 [<c0476e8c>] sys_write+0x41/0x67
 [<c0404f70>] syscall_call+0x7/0xb
 =======================
iwl3945: ipw going down
Comment 6 John W. Linville 2007-05-23 20:27:58 EDT
Are you using the latest iwlwifi-firmware package?

http://koji.fedoraproject.org/packages/iwlwifi-firmware/2.14.3/2/noarch/iwlwifi-firmware-2.14.3-2.noarch.rpm
Comment 7 Jason Tibbitts 2007-05-23 20:49:50 EDT
I believe so (see comment #2).  The machine is running a fully updated rawhide
with the exception of the kernels which I pull out of koji as they finish building.

> rpm -q iwlwifi-firmware
iwlwifi-firmware-2.14.3-2.noarch
Comment 8 John W. Linville 2007-07-13 11:51:51 EDT
Please try the kernels from here:

   http://koji.fedoraproject.org/koji/buildinfo?buildID=10941

Do they work any better for you?
Comment 9 Jason Tibbitts 2007-07-13 15:50:33 EDT
After tracking the upstream iwlwifi git tree for a while, I had a thought that
perhaps there was something odd about the wireless card in the machine, so I
swapped it with a card from another laptop and amazingly even though lspci
showed everything as being identical, the behavior changed and I was able to see
networks.  I was still unable to associate with iwlwifi 0.0.32 but at least
there was some progress.

I will try the kernel builds you recommend, although I know that for anything
beyond 0.0.32 I'll need to track down the updated microcode.

Here are the markings from the two mini-PCIe cards; perhaps it will be useful in
some way:

Original Sony card:
Model: WM3945ABG BGX
Intel PRO/Wireless 3945ABG Network Connection
Serial No: 11D15F466CVD42007005
Mfg Date: 11/14/06  TA: D42007-005
Made in China  MAC: 0019D211D15F

Replacement card:
Model: WM3945ABG MOW1
FCC ID: PD9WM3945ABG  IC: 1000M-3045ABG
Intel PRO/Wireless 3945ABG Network Connection
Serial No: 9538A7416BTD26965008
Mfg Date: 10/11/06  TA: D26965-008
Made In China  MAC: 0018DE9538A7
Comment 10 Jason Tibbitts 2007-07-13 16:39:14 EDT
OK, with the kernel you suggested and the updated microcode, I can associate
with unencrypted networks using the replacement 3945 card.  (No luck with a WPA2
network that's handy.)

If you like I can try with the original card.  (I have to remove the keyboard so
it's a mildly annoying operation.)  Or, if anyone is curious about the old card,
I'll be happy to mail it.

Note You need to log in before you can comment on or make changes to this bug.