Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1b3cbec1 authored by Alan Stern's avatar Alan Stern Committed by Greg Kroah-Hartman
Browse files

PM: fix new mutex-locking bug in the PM core



This patch (as1041) fixes a bug introduced by the
acquire-all-device-semaphores reversion.  The error pathway of
dpm_suspend() fails to reacquire a mutex it should be holding.

Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 7a8d37a3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -428,6 +428,7 @@ static int dpm_suspend(pm_message_t state)

		mutex_unlock(&dpm_list_mtx);
		error = suspend_device(dev, state);
		mutex_lock(&dpm_list_mtx);
		if (error) {
			printk(KERN_ERR "Could not suspend device %s: "
					"error %d%s\n",
@@ -438,7 +439,6 @@ static int dpm_suspend(pm_message_t state)
					""));
			break;
		}
		mutex_lock(&dpm_list_mtx);
		if (!list_empty(&dev->power.entry))
			list_move(&dev->power.entry, &dpm_off);
	}