Bug 233563 - iwlwifi: BUG: held lock freed!
Summary: iwlwifi: BUG: held lock freed!
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: John W. Linville
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-03-23 08:46 UTC by ritz
Modified: 2007-11-30 22:11 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-04-05 18:29:01 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description ritz 2007-03-23 08:46:53 UTC
Description of problem:

NET: Registered protocol family 23
PM: Removing info for No Bus:0000:0c:00.0
iwlwifi: iwlwifi-3945.ucode firmware file req failed: Reason -2
iwlwifi: Could not read microcode from disk: -2
ACPI: PCI interrupt for device 0000:0c:00.0 disabled

=========================
[ BUG: held lock freed! ]
-------------------------
modprobe/1226 is freeing memory c1f38000-c1f3bfff, with a lock still held there!
 (&priv->mutex){--..}, at: [<c0615db2>] mutex_lock+0x21/0x24
1 lock held by modprobe/1226:
 #0:  (&priv->mutex){--..}, at: [<c0615db2>] mutex_lock+0x21/0x24

stack backtrace:
 [<c04061ed>] show_trace_log_lvl+0x1a/0x2f
 [<c04067b1>] show_trace+0x12/0x14
 [<c040682c>] dump_stack+0x16/0x18
 [<c0441fed>] debug_check_no_locks_freed+0xe7/0x11a
 [<c047abef>] kfree+0x5a/0xc2
 [<f89d416a>] cfg80211_dev_free+0x1d/0x20 [cfg80211]
 [<f89d4464>] wiphy_dev_release+0xd/0xf [cfg80211]
 [<c0561411>] device_release+0x3c/0x87
 [<c04f0cb0>] kobject_cleanup+0x46/0x60
 [<c04f0cd5>] kobject_release+0xb/0xd
 [<c04f188c>] kref_put+0x75/0x83
 [<c04f0c68>] kobject_put+0x14/0x16
 [<c05615b7>] put_device+0x11/0x13
 [<f89d414b>] wiphy_free+0xb/0xd [cfg80211]
 [<f8a8f2d7>] ieee80211_free_hw+0x15/0x18 [mac80211]
 [<f8ac71ab>] ipw_pci_probe+0x1326/0x1331 [iwlwifi]
 [<c04febad>] pci_device_probe+0x39/0x5b
 [<c0563bc5>] really_probe+0xc7/0x150
 [<c0563ce3>] driver_probe_device+0x95/0xa1
 [<c0563e0b>] __driver_attach+0x76/0xaf
 [<c0563199>] bus_for_each_dev+0x3a/0x5f
 [<c0563a2f>] driver_attach+0x19/0x1b
 [<c0563480>] bus_add_driver+0x6a/0x170
 [<c0564031>] driver_register+0x79/0x7e
 [<c04fed2b>] __pci_register_driver+0x7c/0xa9
 [<f8853033>] ipw_init+0x33/0x78 [iwlwifi]
 [<c0449ad5>] sys_init_module+0x159b/0x16ea
 [<c0404ff2>] sysenter_past_esp+0x5f/0x99
 =======================
iwlwifi: probe of 0000:0c:00.0 failed with error -2
PM: Adding info for No Bus:sequencer
PM: Adding info for No Bus:sequencer2


Version-Release number of selected component (if applicable):
kernel-PAE-2.6.20-1.3003.fc7

How reproducible:
always

Steps to Reproduce:
1. boot system

Comment 1 John W. Linville 2007-03-23 17:21:45 UTC
I added a patch to my test kernels which should fix this:

   http://people.redhat.com/linville/kernels/fc7/

Please give them a try and post the results here...thanks!

Comment 2 ritz 2007-03-23 20:03:21 UTC
done :)

Linux version 2.6.20-1.3000.2.1.fc7.jwltest.5
(brewbuilder.redhat.com) (gcc version 4.1.2 20070317 (Red Hat 
4.1.2-5)) #1 SMP Tue Mar 20 14:44:05 EDT 2007


iwlwifi: Detected Intel PRO/Wireless 3945ABG Network Connection
PM: Adding info for No Bus:0000:0c:00.0
PM: Adding info for No Bus:sequencer
PM: Adding info for No Bus:sequencer2
PM: Removing info for No Bus:0000:0c:00.0
iwlwifi: iwlwifi-3945.ucode firmware file req failed: Reason -2
iwlwifi: Could not read microcode from disk: -2
ACPI: PCI interrupt for device 0000:0c:00.0 disabled

=========================
[ BUG: held lock freed! ]
-------------------------
modprobe/1276 is freeing memory f76b4000-f76b7fff, with a lock still held there!
 (&priv->mutex){--..}, at: [<c061419a>] mutex_lock+0x21/0x24
1 lock held by modprobe/1276:
 #0:  (&priv->mutex){--..}, at: [<c061419a>] mutex_lock+0x21/0x24

stack backtrace:
 [<c04061ed>] show_trace_log_lvl+0x1a/0x2f
 [<c04067b1>] show_trace+0x12/0x14
 [<c0406835>] dump_stack+0x16/0x18
 [<c0441c79>] debug_check_no_locks_freed+0xe7/0x11a
 [<c04797bf>] kfree+0x5a/0xc2
 [<f89ce185>] cfg80211_dev_free+0x1d/0x20 [cfg80211]
 [<f89ce480>] wiphy_dev_release+0xd/0xf [cfg80211]
 [<c055fa51>] device_release+0x3c/0x87
 [<c04ef380>] kobject_cleanup+0x46/0x60
 [<c04ef3a5>] kobject_release+0xb/0xd
 [<c04eff5c>] kref_put+0x75/0x83
 [<c04ef338>] kobject_put+0x14/0x16
 [<c055fbf7>] put_device+0x11/0x13
 [<f89ce166>] wiphy_free+0xb/0xd [cfg80211]
 [<f8ad62db>] ieee80211_free_hw+0x15/0x18 [mac80211]
 [<f8b0e08d>] ipw_pci_probe+0x131a/0x1325 [iwlwifi]
 [<c04fd27d>] pci_device_probe+0x39/0x5b
 [<c05621f9>] really_probe+0xc7/0x150
 [<c0562317>] driver_probe_device+0x95/0xa1
 [<c056243f>] __driver_attach+0x76/0xaf
 [<c05617cd>] bus_for_each_dev+0x3a/0x5f
 [<c0562063>] driver_attach+0x19/0x1b
 [<c0561ab4>] bus_add_driver+0x6a/0x170
 [<c0562665>] driver_register+0x79/0x7e
 [<c04fd3fb>] __pci_register_driver+0x7c/0xa9
 [<f8853033>] ipw_init+0x33/0x78 [iwlwifi]
 [<c0449761>] sys_init_module+0x159b/0x16ea
 [<c040507c>] syscall_call+0x7/0xb
 =======================
iwlwifi: probe of 0000:0c:00.0 failed with error -2
ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 21 (level, low) -> IRQ 20
PCI: Setting latency timer of device 0000:00:1b.0 to 64
hda_intel: azx_get_response timeout, switching to polling mode...
PM: Adding info for No Bus:pcmC0D1p


Comment 3 Roy-Magne Mo 2007-03-23 20:13:41 UTC
Booting with 2.6.20-1.3000.2.1.fc7.jwltest.5:

iwlwifi: Intel(R) Wireless Link driver for Linux, 0.0.11k
iwlwifi: Copyright(c) 2003-2006 Intel Corporation
ACPI: PCI Interrupt 0000:10:00.0[A] -> GSI 17 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:10:00.0 to 64
iwlwifi: Detected Intel PRO/Wireless 3945ABG Network Connection
PM: Adding info for No Bus:0000:10:00.0
PM: Adding info for No Bus:seq
rtc_cmos 00:06: rtc core: registered rtc_cmos as rtc0
rtc_cmos: probe of 00:06 failed with error -16
Bluetooth: Core ver 2.11
PM: Adding info for platform:bluetooth
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
PM: Removing info for No Bus:0000:10:00.0
ACPI: PCI Interrupt 0000:02:06.1[B] -> GSI 19 (level, low) -> IRQ 18
fw_ohci: Added fw-ohci device 0000:02:06.1, OHCI version 1.10
b44.c:v1.01 (Jun 16, 2006)
ACPI: PCI Interrupt 0000:02:0e.0[A] -> GSI 16 (level, low) -> IRQ 16
PM: Adding info for No Bus:eth0
eth0: Broadcom 4400 10/100BaseT Ethernet 00:17:08:47:22:bd
iwlwifi: Channel 14 [2.4Ghz] is Tx only -- skipping.
iwlwifi: Channel 183 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 184 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 185 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 187 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 188 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 189 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 192 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 196 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 7 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 8 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 11 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 12 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 16 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 145 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 149 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 153 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 157 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 161 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Channel 165 [5.2Ghz] is Tx only -- skipping.
iwlwifi: Tunable channels: 13 802.11bg, 23 802.11a channels
PM: Adding info for No Bus:wiphy0
PM: Adding info for No Bus:wmaster0
iwlwifi: XXXY start rate scale
wmaster0: Selected rate control algorithm 'iwlwifi rate-scale'

the driver loads fine itself, seems like scanning work. But however I can't seem
to associate with any AP, seems like I'm not able to send anything. 

Tried both with and without WEP.

Anything specific you wan't me to try? 


Comment 4 John W. Linville 2007-03-23 20:16:00 UTC
Hmmm...well, I appreciate the quick turn-around!

However, it seems that I messed-up my test kernel publishing, and you 
inadvertently tested the wrong kernels... :-(

Could you try again with the fc7.netdev.6 (or later) kernels available now?

Comment 5 John W. Linville 2007-03-23 20:18:23 UTC
BTW, you should only see the original bug if you do _not_ have the firmware 
installed properly.

Comment 6 ritz 2007-03-23 20:39:23 UTC
might be just me, how do i install the firmware properly ?

Comment 7 ritz 2007-03-23 20:43:49 UTC
might be me, how do i install firmware properly ?
currently i use ipw3945 driver, and firmware is copied to /lib/firmware .

downloading the kernel now, and will check.

Comment 8 ritz 2007-03-23 20:44:53 UTC
my bad, are we talking about kernel-PAE-2.6.20-1.2925.2.5.fc6.netdev.7.i686.rpm ?

Comment 9 ritz 2007-03-23 20:46:52 UTC
sorry, could not find any fc7.netdev.7 kernel.
out on vacation. will check back in a week, if this bug is still not dead :P

Comment 10 John W. Linville 2007-03-23 21:25:10 UTC
Crap...that should have said "fc7.jwltest.6"...

Anyway, ignore my bad typing and please try the latest kernels available at 
the location in comment 1. :-)

Comment 11 das_deniz 2007-03-30 14:17:25 UTC
kernel: iwlwifi: Intel(R) Wireless Link driver for Linux, 0.0.11k
kernel: iwlwifi: Copyright(c) 2003-2006 Intel Corporation
kernel: ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 17 (level, low) -> IRQ 17
kernel: iwlwifi: Detected Intel PRO/Wireless 3945ABG Network Connection
kernel: iwlwifi: iwlwifi-3945.ucode firmware file req failed: Reason -2
kernel: iwlwifi: Could not read microcode from disk: -2
kernel: ACPI: PCI interrupt for device 0000:03:00.0 disabled
kernel: iwlwifi: probe of 0000:03:00.0 failed with error -2


so the driver is in kernel / rawhide - but the firmware package isn't?
where is the firmware so i can add it and make my laptop happy with f7t3?

thank you !


Comment 12 das_deniz 2007-03-30 14:43:15 UTC
oops, sorry... my bad. i updated from f7t2 to devel latest after release of f7t3
and didn't see the iwlwifi-firmware-2.14.1-4 pkg.  I have that now and rebooted.
See this:

/etc/init.d/network start
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:  
Determining IP information for eth0... done.
                                                           [  OK  ]
Bringing up interface wmaster0:  Error for wireless request "Set Encode" (8B2A) :
    SET failed on device wmaster0 ; Operation not supported.

Determining IP information for wmaster0... failed.
                                                           [FAILED]


Comment 13 John W. Linville 2007-04-05 18:29:01 UTC
Comment 11 confirms that the bug is fixed, comment 12 is another issue 
(kudzu/initscripts not ignoring wmasterX).

Easiest for you would be to use system-config-network and delete any 
references to wmaster0.  You should wlan0 instead.


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