diff options
Diffstat (limited to 'drivers/infiniband/hw/qib/qib_pcie.c')
-rw-r--r-- | drivers/infiniband/hw/qib/qib_pcie.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/infiniband/hw/qib/qib_pcie.c b/drivers/infiniband/hw/qib/qib_pcie.c index 61a0046efb76..4758a3801ae8 100644 --- a/drivers/infiniband/hw/qib/qib_pcie.c +++ b/drivers/infiniband/hw/qib/qib_pcie.c | |||
@@ -210,7 +210,7 @@ static void qib_msix_setup(struct qib_devdata *dd, int pos, u32 *msixcnt, | |||
210 | /* We can't pass qib_msix_entry array to qib_msix_setup | 210 | /* We can't pass qib_msix_entry array to qib_msix_setup |
211 | * so use a dummy msix_entry array and copy the allocated | 211 | * so use a dummy msix_entry array and copy the allocated |
212 | * irq back to the qib_msix_entry array. */ | 212 | * irq back to the qib_msix_entry array. */ |
213 | msix_entry = kmalloc(nvec * sizeof(*msix_entry), GFP_KERNEL); | 213 | msix_entry = kcalloc(nvec, sizeof(*msix_entry), GFP_KERNEL); |
214 | if (!msix_entry) | 214 | if (!msix_entry) |
215 | goto do_intx; | 215 | goto do_intx; |
216 | 216 | ||
@@ -234,8 +234,10 @@ free_msix_entry: | |||
234 | kfree(msix_entry); | 234 | kfree(msix_entry); |
235 | 235 | ||
236 | do_intx: | 236 | do_intx: |
237 | qib_dev_err(dd, "pci_enable_msix_range %d vectors failed: %d, " | 237 | qib_dev_err( |
238 | "falling back to INTx\n", nvec, ret); | 238 | dd, |
239 | "pci_enable_msix_range %d vectors failed: %d, falling back to INTx\n", | ||
240 | nvec, ret); | ||
239 | *msixcnt = 0; | 241 | *msixcnt = 0; |
240 | qib_enable_intx(dd->pcidev); | 242 | qib_enable_intx(dd->pcidev); |
241 | } | 243 | } |
@@ -459,6 +461,7 @@ void qib_pcie_getcmd(struct qib_devdata *dd, u16 *cmd, u8 *iline, u8 *cline) | |||
459 | void qib_pcie_reenable(struct qib_devdata *dd, u16 cmd, u8 iline, u8 cline) | 461 | void qib_pcie_reenable(struct qib_devdata *dd, u16 cmd, u8 iline, u8 cline) |
460 | { | 462 | { |
461 | int r; | 463 | int r; |
464 | |||
462 | r = pci_write_config_dword(dd->pcidev, PCI_BASE_ADDRESS_0, | 465 | r = pci_write_config_dword(dd->pcidev, PCI_BASE_ADDRESS_0, |
463 | dd->pcibar0); | 466 | dd->pcibar0); |
464 | if (r) | 467 | if (r) |
@@ -696,6 +699,7 @@ static void | |||
696 | qib_pci_resume(struct pci_dev *pdev) | 699 | qib_pci_resume(struct pci_dev *pdev) |
697 | { | 700 | { |
698 | struct qib_devdata *dd = pci_get_drvdata(pdev); | 701 | struct qib_devdata *dd = pci_get_drvdata(pdev); |
702 | |||
699 | qib_devinfo(pdev, "QIB resume function called\n"); | 703 | qib_devinfo(pdev, "QIB resume function called\n"); |
700 | pci_cleanup_aer_uncorrect_error_status(pdev); | 704 | pci_cleanup_aer_uncorrect_error_status(pdev); |
701 | /* | 705 | /* |