aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-12-08 12:58:10 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2017-12-08 12:58:10 -0500
commit7ed9fd2e2916e89a5874359d6e4d5a49abb08c83 (patch)
tree56ada72168097b0c69d5b5528c4154915fa4c967
parent968edbd93c0cbb40ab48aca972392d377713a0c3 (diff)
parent31eb7431805493e10f4731f366cf4d4e3e952035 (diff)
Merge tag 'pm-4.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management fix from Rafael Wysocki: "This fixes an issue in the device runtime PM framework that prevents customer devices from resuming if runtime PM is disabled for one or more of their supplier devices (as reflected by device links between those devices)" * tag 'pm-4.15-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: PM / runtime: Fix handling of suppliers with disabled runtime PM
-rw-r--r--drivers/base/power/runtime.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/base/power/runtime.c b/drivers/base/power/runtime.c
index 027d159ac381..6e89b51ea3d9 100644
--- a/drivers/base/power/runtime.c
+++ b/drivers/base/power/runtime.c
@@ -276,7 +276,8 @@ static int rpm_get_suppliers(struct device *dev)
276 continue; 276 continue;
277 277
278 retval = pm_runtime_get_sync(link->supplier); 278 retval = pm_runtime_get_sync(link->supplier);
279 if (retval < 0) { 279 /* Ignore suppliers with disabled runtime PM. */
280 if (retval < 0 && retval != -EACCES) {
280 pm_runtime_put_noidle(link->supplier); 281 pm_runtime_put_noidle(link->supplier);
281 return retval; 282 return retval;
282 } 283 }