Commit 0a0829b1 authored by Alex Williamson's avatar Alex Williamson Committed by Bjorn Helgaas
Browse files

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: default avatarAlex Williamson <alex.williamson@redhat.com>
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Link: https://patch.msgid.link/20250422230534.2295291-3-alex.williamson@redhat.com
parent bfa44777
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -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;