From: Dan Williams Date: Fri, 25 May 2007 21:33:28 +0000 (-0400) Subject: [PATCH] libertas: correctly balance locking in libertas_process_rx_command X-Git-Tag: v2.6.22-rc5~44^2~2^2~23 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6cfb00823872d0181c5c72c2d457de93518d96e7;p=linux-2.6 [PATCH] libertas: correctly balance locking in libertas_process_rx_command adapter->lock should released after unlocking adapter->driver_lock to balance the order in which they were locked at the top of the function. Signed-off-by: Dan Williams Signed-off-by: John W. Linville --- diff --git a/drivers/net/wireless/libertas/cmdresp.c b/drivers/net/wireless/libertas/cmdresp.c index 6bf50c1eeb..c0c0471119 100644 --- a/drivers/net/wireless/libertas/cmdresp.c +++ b/drivers/net/wireless/libertas/cmdresp.c @@ -826,8 +826,8 @@ int libertas_process_rx_command(wlan_private * priv) lbs_deb_cmd( "Disconnected, Going to invoke libertas_ps_wakeup\n"); - mutex_unlock(&adapter->lock); spin_unlock_irqrestore(&adapter->driver_lock, flags); + mutex_unlock(&adapter->lock); libertas_ps_wakeup(priv, 0); mutex_lock(&adapter->lock); spin_lock_irqsave(&adapter->driver_lock, flags);