]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
PM: runtime: Make pm_runtime_barrier() return void
authorBrian Norris <briannorris@chromium.org>
Tue, 2 Dec 2025 19:30:25 +0000 (11:30 -0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 4 Dec 2025 19:38:13 +0000 (20:38 +0100)
No callers check the return code, and that's a good thing. Doing so
would be racy and unhelpful.

Drop the return code entirely, so we don't make anyone think about its
complexities.

Signed-off-by: Brian Norris <briannorris@chromium.org>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Link: https://patch.msgid.link/20251202193129.1411419-2-briannorris@chromium.org
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Documentation/power/runtime_pm.rst
drivers/base/power/runtime.c
include/linux/pm_runtime.h

index 8246df3cecd7ef13937e14c21472dae569fc4c92..455b9d135d8556898e42b57f67be7be2bdbf88bb 100644 (file)
@@ -443,13 +443,11 @@ drivers/base/power/runtime.c and include/linux/pm_runtime.h:
       necessary to execute the subsystem-level resume callback for the device
       to satisfy that request, otherwise 0 is returned
 
-  `int pm_runtime_barrier(struct device *dev);`
+  `void pm_runtime_barrier(struct device *dev);`
     - check if there's a resume request pending for the device and resume it
       (synchronously) in that case, cancel any other pending runtime PM requests
       regarding it and wait for all runtime PM operations on it in progress to
-      complete; returns 1 if there was a resume request pending and it was
-      necessary to execute the subsystem-level resume callback for the device to
-      satisfy that request, otherwise 0 is returned
+      complete
 
   `void pm_suspend_ignore_children(struct device *dev, bool enable);`
     - set/unset the power.ignore_children flag of the device
index 62707738caa4ff35d77ea68e7caf645a22c1f36b..84676cc2422147731209971225e093cbaadbe3e8 100644 (file)
@@ -1467,30 +1467,20 @@ static void __pm_runtime_barrier(struct device *dev)
  * Next, make sure that all pending requests for the device have been flushed
  * from pm_wq and wait for all runtime PM operations involving the device in
  * progress to complete.
- *
- * Return value:
- * 1, if there was a resume request pending and the device had to be woken up,
- * 0, otherwise
  */
-int pm_runtime_barrier(struct device *dev)
+void pm_runtime_barrier(struct device *dev)
 {
-       int retval = 0;
-
        pm_runtime_get_noresume(dev);
        spin_lock_irq(&dev->power.lock);
 
        if (dev->power.request_pending
-           && dev->power.request == RPM_REQ_RESUME) {
+           && dev->power.request == RPM_REQ_RESUME)
                rpm_resume(dev, 0);
-               retval = 1;
-       }
 
        __pm_runtime_barrier(dev);
 
        spin_unlock_irq(&dev->power.lock);
        pm_runtime_put_noidle(dev);
-
-       return retval;
 }
 EXPORT_SYMBOL_GPL(pm_runtime_barrier);
 
index 911d7a4d32c15958b853d15bbe9da84cdb306cfa..41037c513f06e7604ecb68c6201717e15ec96beb 100644 (file)
@@ -76,7 +76,7 @@ extern int pm_runtime_get_if_active(struct device *dev);
 extern int pm_runtime_get_if_in_use(struct device *dev);
 extern int pm_schedule_suspend(struct device *dev, unsigned int delay);
 extern int __pm_runtime_set_status(struct device *dev, unsigned int status);
-extern int pm_runtime_barrier(struct device *dev);
+extern void pm_runtime_barrier(struct device *dev);
 extern bool pm_runtime_block_if_disabled(struct device *dev);
 extern void pm_runtime_unblock(struct device *dev);
 extern void pm_runtime_enable(struct device *dev);
@@ -284,7 +284,7 @@ static inline int pm_runtime_get_if_active(struct device *dev)
 }
 static inline int __pm_runtime_set_status(struct device *dev,
                                            unsigned int status) { return 0; }
-static inline int pm_runtime_barrier(struct device *dev) { return 0; }
+static inline void pm_runtime_barrier(struct device *dev) {}
 static inline bool pm_runtime_block_if_disabled(struct device *dev) { return true; }
 static inline void pm_runtime_unblock(struct device *dev) {}
 static inline void pm_runtime_enable(struct device *dev) {}