On Tue, 30 Dec 2008, Alan Jenkins wrote: > Ok, I think I got it. > > The hang is in ieee80211_unregister_hw(), on this line: > > destroy_workqueue(local->hw.workqueue); > > > local->hw.workqueue is created using create_freezeable_workqueue(). So > presumably destroy_workqueue() deadlocks because the workqueue has > already been frozen. > > Is it possible to fix this without suspend support in mac80211? If not, > I vote we change rtl8187 (and zd_usb) to prevent suspend. I.e. set USB > suspend callbacks which return an error. It certainly should be possible to fix this. For instance, why unregister anything during suspend? If ieee80211_unregister_hw() weren't called then this problem would go away, right? Alan Stern _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm