From: Alex Williamson Date: Tue, 22 Apr 2025 23:05:32 +0000 (-0600) Subject: PCI: Increment PM usage counter when probing reset methods X-Git-Tag: v6.16-rc1~50^2~19^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0a0829b1fd76cb6110cc049a60e634a51969e488;p=thirdparty%2Fkernel%2Flinux.git PCI: Increment PM usage counter when probing reset methods We can get different results probing reset methods for a device depending on its power state. For example, reading the PM control register of a device in D3cold will always indicate NoSoftRst+ because we get ~0 data when the config read fails on PCI, preventing us from correctly probing PM reset support. Increment the PM usage counter before any probes and use the cleanup __free facility to automatically drop the usage counter out of scope. Signed-off-by: Alex Williamson Signed-off-by: Bjorn Helgaas Link: https://patch.msgid.link/20250422230534.2295291-3-alex.williamson@redhat.com --- diff --git a/drivers/pci/pci-sysfs.c b/drivers/pci/pci-sysfs.c index c6cda56ca52cc..71a36f57ef57a 100644 --- a/drivers/pci/pci-sysfs.c +++ b/drivers/pci/pci-sysfs.c @@ -1475,6 +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; + if (sysfs_streq(buf, "default")) { pci_init_reset_methods(pdev); return count;