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>
This commit is contained in:
Rafael J. Wysocki
2025-09-26 18:24:05 +02:00
parent 9a0abc3945
commit 8ff5aaa7b8

View File

@@ -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);