PCI: Document reset method return values

The pci_reset_function() path may try several different reset methods:
device-specific resets, PCIe Function Level Resets, PCI Advanced Features
Function Level Reset, etc.

Add a comment about what the return values from these methods mean.  If one
of the methods fails, in some cases we want to continue and try the next
one in the list, but sometimes we want to stop trying.

Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
This commit is contained in:
Bjorn Helgaas 2017-10-25 17:09:24 -05:00
parent 16b6c8bb68
commit 832c418a15

View File

@ -4170,6 +4170,14 @@ int __pci_reset_function_locked(struct pci_dev *dev)
might_sleep();
/*
* A reset method returns -ENOTTY if it doesn't support this device
* and we should try the next method.
*
* If it returns 0 (success), we're finished. If it returns any
* other error, we're also finished: this indicates that further
* reset mechanisms might be broken on the device.
*/
rc = pci_dev_specific_reset(dev, 0);
if (rc != -ENOTTY)
return rc;