Bugzilla – Bug 1964
Iwlwifi causes microcode error and OOPs when associating
Last modified: 2009-05-30 19:27:29
You need to log in before you can comment on or make changes to this bug.
Recently (since 2.9.29 or so) NetworkManager induces a Microcode Error when attempting to associate. Shortly thereafter, it causes an oops which generally causes the rest of the machine to lock up. Apr 8 14:34:34 mercury NetworkManager: <info> Wireless now enabled by radio killswitch Apr 8 14:34:34 mercury NetworkManager: <info> (wlan0): bringing up device. Apr 8 14:34:34 mercury kernel: Bluetooth: RFCOMM socket layer initialized Apr 8 14:34:34 mercury kernel: Bluetooth: RFCOMM TTY layer initialized Apr 8 14:34:34 mercury kernel: Bluetooth: RFCOMM ver 1.11 Apr 8 14:34:34 mercury bluetoothd[3126]: Adapter /org/bluez/3126/hci0 has been enabled Apr 8 14:34:34 mercury kernel: Registered led device: iwl-phy0::radio Apr 8 14:34:34 mercury kernel: Registered led device: iwl-phy0::assoc Apr 8 14:34:34 mercury kernel: Registered led device: iwl-phy0::RX Apr 8 14:34:34 mercury kernel: Registered led device: iwl-phy0::TX Apr 8 14:34:34 mercury NetworkManager: <info> (wlan0): device state change: 2 -> 3 Apr 8 14:34:34 mercury kernel: ADDRCONF(NETDEV_UP): wlan0: link is not ready Apr 8 14:34:34 mercury NetworkManager: <info> (wlan0): supplicant interface state: starting -> ready Apr 8 14:34:35 mercury kernel: iwl3945 0000:0c:00.0: Microcode SW error detected. Restarting 0x82000008. Apr 8 14:34:35 mercury kernel: iwl3945 0000:0c:00.0: Error Reply type 0x00000005 cmd REPLY_PHY_CALIBRATION_CMD (0xB0) seq 0x013A ser 0x004E0000 Apr 8 14:34:35 mercury kernel: general protection fault: 0000 [#1] PREEMPT SMP Apr 8 14:34:35 mercury kernel: last sysfs file: /sys/devices/pci0000:00/0000:00:1c.1/0000:0c:00.0/rfkill/rfkill0/state Apr 8 14:34:35 mercury kernel: CPU 1 Apr 8 14:34:35 mercury kernel: Modules linked in: rfcomm btusb bridge stp llc bnep sco l2cap bluetooth coretemp hwmon sunrpc ip6table_filter ip6_tables ipv6 cpufreq_ondemand acpi_cpufreq freq_table dm_multipath uinput arc4 ecb iwl3945 iwlcore snd_hda_codec_idt mac80211 snd_hda_intel snd_hda_codec snd_hwdep snd_pcm snd_timer snd lib80211 firewire_ohci yenta_socket iTCO_wdt cfg80211 tg3 battery soundcore dell_laptop iTCO_vendor_support video output wmi rsrc_nonstatic i2c_i801 firewire_core crc_itu_t libphy pcspkr joydev rfkill dcdbas ac snd_page_alloc i915 drm i2c_algo_bit cfbcopyarea i2c_core cfbimgblt cfbfillrect [last unloaded: microcode] Apr 8 14:34:35 mercury kernel: Pid: 2485, comm: iwl3945 Not tainted 2.6.29work #29 Latitude D830 Apr 8 14:34:35 mercury kernel: RIP: 0010:[<ffffffff810a7b4c>] [<ffffffff810a7b4c>] put_page+0x16/0x99 Apr 8 14:34:35 mercury kernel: RSP: 0018:ffff880117d09d10 EFLAGS: 00010082 Apr 8 14:34:35 mercury kernel: RAX: ffff8801104c2bc0 RBX: ffff880107c02000 RCX: 0000000000000abe Apr 8 14:34:35 mercury kernel: RDX: 0000000000000030 RSI: 0000000000000086 RDI: e8c589ef894cffff Apr 8 14:34:35 mercury kernel: RBP: ffff880117d09d40 R08: ffff880117d09d80 R09: 0000000000000003 Apr 8 14:34:35 mercury kernel: R10: 0000000000000000 R11: 0000002d17da21c8 R12: 0000000000000001 Apr 8 14:34:35 mercury kernel: R13: ffff880117da5c38 R14: ffff880117da21e0 R15: 0000000000000000 Apr 8 14:34:35 mercury kernel: FS: 0000000000000000(0000) GS:ffff88002803a000(0000) knlGS:0000000000000000 Apr 8 14:34:35 mercury kernel: CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b Apr 8 14:34:35 mercury kernel: CR2: 00007f550652fe60 CR3: 0000000000201000 CR4: 00000000000006e0 Apr 8 14:34:35 mercury kernel: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 Apr 8 14:34:35 mercury kernel: DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Apr 8 14:34:35 mercury kernel: Process iwl3945 (pid: 2485, threadinfo ffff880117d08000, task ffff88011d5245c0) Apr 8 14:34:35 mercury kernel: Stack: Apr 8 14:34:35 mercury kernel: 0000000000000abe ffff880107c02000 0000000000000001 ffff880117da5c38 Apr 8 14:34:35 mercury kernel: ffff880117da21e0 0000000000000000 ffff880117d09d60 ffffffff8133da83 Apr 8 14:34:35 mercury kernel: ffff880107c02000 ffff880117da10e0 ffff880117d09d80 ffffffff8133d603 Apr 8 14:34:35 mercury kernel: Call Trace: Apr 8 14:34:35 mercury kernel: [<ffffffff8133da83>] skb_release_data+0x77/0xce Apr 8 14:34:35 mercury kernel: [<ffffffff8133d603>] __kfree_skb+0x1e/0x81 Apr 8 14:34:35 mercury kernel: [<ffffffff8133d693>] consume_skb+0x2d/0x2f Apr 8 14:34:35 mercury kernel: [<ffffffffa01eca5b>] iwl_rx_queue_reset+0x97/0x104 [iwlcore] Apr 8 14:34:35 mercury kernel: [<ffffffffa021d6f3>] iwl3945_hw_nic_init+0x16b/0x4bb [iwl3945] Apr 8 14:34:35 mercury kernel: [<ffffffffa0216d30>] __iwl3945_up+0x157/0x2d0 [iwl3945] Apr 8 14:34:35 mercury kernel: [<ffffffffa0216edc>] iwl3945_bg_up+0x33/0x48 [iwl3945] Apr 8 14:34:35 mercury kernel: [<ffffffffa0216ea9>] ? iwl3945_bg_up+0x0/0x48 [iwl3945] Apr 8 14:34:35 mercury kernel: [<ffffffff81059d45>] run_workqueue+0x94/0x131 Apr 8 14:34:35 mercury kernel: [<ffffffff81059ece>] worker_thread+0xec/0xfd Apr 8 14:34:35 mercury kernel: [<ffffffff8105dac7>] ? autoremove_wake_function+0x0/ Apr 8 14:34:35 mercury kernel: [<ffffffff81059de2>] ? worker_thread+0x0/0xfd Apr 8 14:34:35 mercury kernel: [<ffffffff8105d6c6>] kthread+0x4d/0x78 Apr 8 14:34:35 mercury kernel: [<ffffffff81011e6a>] child_rip+0xa/0x20 Apr 8 14:34:35 mercury kernel: [<ffffffff81011801>] ? restore_args+0x0/0x30 Apr 8 14:34:35 mercury kernel: [<ffffffff8105d679>] ? kthread+0x0/0x78 Apr 8 14:34:35 mercury kernel: [<ffffffff81011e60>] ? child_rip+0x0/0x20 Apr 8 14:34:35 mercury kernel: Code: 89 e5 0f 1f 44 00 00 48 c7 c7 91 78 0a 81 e8 e8 2c fb ff c9 c3 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 08 0f 1f 44 00 00 <48> f7 07 00 60 00 00 48 89 fb 74 07 e8 0b f4 ff ff eb 64 f0 ff Apr 8 14:34:35 mercury kernel: RIP [<ffffffff810a7b4c>] put_page+0x16/0x99 Apr 8 14:34:35 mercury kernel: RSP <ffff880117d09d10> Apr 8 14:34:35 mercury kernel: ---[ end trace c75efee48ea390a2 ]--- Apr 8 14:34:35 mercury kernel: note: iwl3945[2485] exited with preempt_count 1
Created an attachment (id=1936) [details] Better formatted dmesg output
Could you please recompile driver with CONFIG_IWLWIFI_DEBUG? CONFIG_IWLWIFI_DEBUG=y You then can reload driver with "modprobe iwlagn debug=0x43fff". Please attach dmesg log after you see the connection stall. Please see http://www.intellinuxwireless.org/?n=fw_error_report for detail uCode error report.
Created an attachment (id=1940) [details] DMA fixes Could you please try the attached patch?
(In reply to comment #3) > Created an attachment (id=1940) [details] [details] > DMA fixes > > Could you please try the attached patch? > As it turns out, this seems to fix it. When will this be going into Linus's master?
(In reply to comment #4) > (In reply to comment #3) > > Created an attachment (id=1940) [details] [details] [details] > > DMA fixes > > > > Could you please try the attached patch? > > > > As it turns out, this seems to fix it. When will this be going into Linus's > master? > That is the goal but unfortunately this patch breaks fragmentation on the 5100 device. We cannot send it upstream until this has been resolved. There thus seems to still be problems with this patch. Could you please run with it for a while to help us catch the issues?
(In reply to comment #5) > That is the goal but unfortunately this patch breaks fragmentation on the 5100 > device. We cannot send it upstream until this has been resolved. There thus > seems to still be problems with this patch. Could you please run with it for a > while to help us catch the issues? > Absolutely, I've been running it ever since my last message. No problems so far. Let me know when there's another patch to be tested.
Created an attachment (id=1945) [details] small debug patch debug patch on which new DMA fix patch depends
Created an attachment (id=1946) [details] DMA fixes Could you please test this new version of the DMA fixes patch? It does depend on a small debug patch that is also attached here. Thanks
This patch is upstream now
Mark it as Verified.