On Tue, 2009-11-17 at 18:48 +0200, Kalle Valo wrote: > From: Vidhya Govindan <vidhya.govindan@xxxxxxxxx> > > Lockdep shows that there is a deadlock when calling ieee80211_rssi_changed() > under wl->mutex. Fix it by releasing mutex before calling mac80211 functions. > This patch is based on Work-In-Progress patch sent by Kalle Valo. > if (vector & SYNCHRONIZATION_TIMEOUT_EVENT_ID && wl->psm) { > wl1251_debug(DEBUG_EVENT, "SYNCHRONIZATION_TIMEOUT_EVENT"); > + /* need to unlock mutex to avoid deadlocking with rtnl */ > + mutex_unlock(&wl->mutex); > > /* indicate to the stack, that beacons have been lost */ > ieee80211_beacon_loss(wl->vif); > + mutex_lock(&wl->mutex); That can't be true, ieee80211_beacon_loss() only calls ieee80211_queue_work(). johannes
Attachment:
signature.asc
Description: This is a digitally signed message part