From: Bolarinwa Olayemi Saheed <refactormyself@xxxxxxxxx> restore_pci_variables() and save_pci_variables() return PCIBIOS_ error codes from pcie capability accessors. PCIBIOS_ error codes have positive values. Passing on these values is inconsistent with functions which return only a negative value on failure. Before passing on return value of pcie capability accessors, call pcibios_err_to_errno() to convert any positive PCIBIOS_ error codes to negative non-PCI generic error values. Signed-off-by: Bolarinwa Olayemi Saheed <refactormyself@xxxxxxxxx> Suggested-by: Bjorn Helgaas <bjorn@xxxxxxxxxxx> --- drivers/infiniband/hw/hfi1/pcie.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/drivers/infiniband/hw/hfi1/pcie.c b/drivers/infiniband/hw/hfi1/pcie.c index eb53781d0c6a..eb2790e9db36 100644 --- a/drivers/infiniband/hw/hfi1/pcie.c +++ b/drivers/infiniband/hw/hfi1/pcie.c @@ -334,7 +334,11 @@ int pcie_speeds(struct hfi1_devdata *dd) return 0; } -/* restore command and BARs after a reset has wiped them out */ +/** + * restore command and BARs after a reset has wiped them out + * + * Returns 0 on success, otherwise a negative error value + */ int restore_pci_variables(struct hfi1_devdata *dd) { int ret = 0; @@ -386,10 +390,14 @@ int restore_pci_variables(struct hfi1_devdata *dd) error: dd_dev_err(dd, "Unable to write to PCI config\n"); - return ret; + return pcibios_err_to_errno(ret); } -/* Save BARs and command to rewrite after device reset */ +/** + * Save BARs and command to rewrite after device reset + * + * Returns 0 on success, otherwise a negative error value + */ int save_pci_variables(struct hfi1_devdata *dd) { int ret = 0; @@ -441,7 +449,7 @@ int save_pci_variables(struct hfi1_devdata *dd) error: dd_dev_err(dd, "Unable to read from PCI config\n"); - return ret; + return pcibios_err_to_errno(ret); } /* -- 2.18.2