aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/pci-sysfs.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2025-09-26 18:24:05 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2025-09-29 17:01:47 +0200
commit8ff5aaa7b8c9fb3e66df6f440ee109d00f8d7a1b (patch)
tree7d31fb8d5c2fd029095a8f1954742a705556fdc2 /drivers/pci/pci-sysfs.c
parentPM: runtime: Add auto-cleanup macros for "resume and get" operations (diff)
downloadlinux-8ff5aaa7b8c9fb3e66df6f440ee109d00f8d7a1b.tar.gz
linux-8ff5aaa7b8c9fb3e66df6f440ee109d00f8d7a1b.zip
PCI/sysfs: Use runtime PM guard macro for auto-cleanup
Use the newly introduced pm_runtime_active_try guard to simplify the code and add the proper error handling for PM runtime resume errors. Based on an earlier patch from Takashi Iwai <tiwai@suse.de> [1]. Link: https://patch.msgid.link/20250919163147.4743-3-tiwai@suse.de [1] Acked-by: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: Takashi Iwai <tiwai@suse.de> Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Diffstat (limited to 'drivers/pci/pci-sysfs.c')
-rw-r--r--drivers/pci/pci-sysfs.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c
index 5eea14c1f7f5..c96301026f01 100644
--- a/drivers/pci/pci-sysfs.c
+++ b/drivers/pci/pci-sysfs.c
@@ -1475,8 +1475,9 @@ static ssize_t reset_method_store(struct device *dev,
return count;
}
- pm_runtime_get_sync(dev);
- struct device *pmdev __free(pm_runtime_put) = dev;
+ ACQUIRE(pm_runtime_active_try, pm)(dev);
+ if (ACQUIRE_ERR(pm_runtime_active_try, &pm))
+ return -ENXIO;
if (sysfs_streq(buf, "default")) {
pci_init_reset_methods(pdev);