Workqueue locking...
David Woodhouse
dwmw2 at infradead.org
Mon May 21 22:48:28 EDT 2007
... or lack of it. If I unload the usb8xxx module while
libertas_association_worker() is running (it never seems to finish on
PPC, for reasons I have yet to establish), it dies horribly...
usb8xxx: URB in failure status: -108
usb8xxx (INT): if_usb_receive():631 enter
usb8xxx (INT): if_usb_receive():688 leave
usb8xxx: 1-2:call remove card
libertas: libertas_remove_mesh():1042 enter
libertas: libertas_remove_mesh():1059 leave
libertas: libertas_remove_card():985 enter
libertas: wake_pending_cmdnodes():968 enter
libertas: libertas_prepare_and_send_command():1423 leave, ret 0
libertas: wlan_associate():135 leave, ret 0
libertas: assoc_helper_essid():120 leave, ret 0
libertas: ASSOC: assoication attempt unsuccessful, not connected.
libertas: ASSOC: reconfiguration attempt unsuccessful: -1
libertas: libertas_association_worker():643 leave
libertas: libertas_association_worker():473 enter
libertas: #### Association Request: libertas_association_worker
flags: 0x00000012
SSID: 'media lab 802.11'
channel: 11
band: 0
mode: 2
BSSID: 00:00:00:00:00:00
Encryption:
auth: 1
libertas: assoc_helper_mode():193 enter
libertas: assoc_helper_mode():212 leave, ret 0
libertas: assoc_helper_essid():72 enter
libertas: New SSID requested: media lab 802.11
libertas: libertas_send_specific_SSID_scan():1446 enter
libertas: wlan_scan_networks():796 enter
libertas: Scan: Creating full region channel list
Unable to handle kernel paging request for data at address 0x0000002c
Faulting instruction address: 0xc952dba0
Oops: Kernel access of bad area, sig: 11 [#1]
Modules linked in: usb8xxx(U) libertas(U) autofs4(U) hidp(U) rfcomm(U) l2cap(U))
NIP: C952DBA0 LR: C952DB90 CTR: C0254700
REGS: c11dbc60 TRAP: 0300 Not tainted (2.6.21-1.3167.fc7)
MSR: 00009032 <EE,ME,IR,DR> CR: 42002022 XER: 00000000
DAR: 0000002C, DSISR: 20000000
TASK = c113c6d0[1787] 'libertas_assoc' THREAD: c11da000
GPR00: 0000002C C11DBD10 C113C6D0 00000000 C1105E69 00000001 00000000 00000017
GPR08: C0579800 00000001 00000017 C0254700 2E2B8A40 7FEFFFFF 00000001 0000000E
GPR16: 00000001 C1859600 C1105000 00000000 00000002 00000000 C3F7A740 00000000
GPR24: 0000000B C3F7A760 C11A7400 00000000 C11DBD9C 00000000 C1105D4C C185964E
NIP [C952DBA0] wlan_scan_networks+0x684/0xbc8 [libertas]
LR [C952DB90] wlan_scan_networks+0x674/0xbc8 [libertas]
Call Trace:
[C11DBD10] [C952DB88] wlan_scan_networks+0x66c/0xbc8 [libertas] (unreliable)
[C11DBD80] [C952E798] libertas_send_specific_SSID_scan+0xb8/0x1ac [libertas]
[C11DBF10] [C953BA18] libertas_association_worker+0x1118/0x6328 [libertas]
[C11DBF50] [C00450F0] run_workqueue+0xb4/0x164
[C11DBF70] [C0045968] worker_thread+0x124/0x15c
[C11DBFC0] [C00493B8] kthread+0xc4/0x100
[C11DBFF0] [C0013FA0] kernel_thread+0x44/0x60
Instruction dump:
7ce00028 7ce74b78 7ce0012d 40a2fff4 807a0034 4800e365 83ba0094 4800e39d
2f830000 409e001c 381d002c 39200001 <7ce00028> 7ce74b78 7ce0012d 40a2fff4
libertas: wlan_dev_close():319 enter
libertas: wlan_dev_close():324 leave
--
dwmw2
More information about the libertas-dev
mailing list