Prechádzať zdrojové kódy

[WATCHDOG] w83697ug, fix lock imbalance

Don't forget to unlock io_lock when w83697ug_select_wd_register fails in
wdt_ctrl.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Jiri Slaby 16 rokov pred
rodič
commit
db5d2d8a5d
1 zmenil súbory, kde vykonal 3 pridanie a 1 odobranie
  1. 3 1
      drivers/watchdog/w83697ug_wdt.c

+ 3 - 1
drivers/watchdog/w83697ug_wdt.c

@@ -149,8 +149,10 @@ static void wdt_ctrl(int timeout)
 {
 	spin_lock(&io_lock);
 
-	if (w83697ug_select_wd_register() < 0)
+	if (w83697ug_select_wd_register() < 0) {
+		spin_unlock(&io_lock);
 		return;
+	}
 
 	outb_p(0xF4, WDT_EFER);    /* Select CRF4 */
 	outb_p(timeout, WDT_EFDR); /* Write Timeout counter to CRF4 */