summaryrefslogtreecommitdiff
path: root/drivers/misc/genwqe/card_ddcb.c
diff options
context:
space:
mode:
authorSebastian Ott <sebott@linux.vnet.ibm.com>2014-07-09 14:46:39 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-07-10 01:16:48 +0400
commit7276883f1f98cd0a92fdc049f69bdc0912f7fc16 (patch)
tree6cd012e0005b3128c6034a5eb57c2dd95419b14a /drivers/misc/genwqe/card_ddcb.c
parentd584f69d3217fb4336e58f14afca07d709b1c205 (diff)
downloadlinux-7276883f1f98cd0a92fdc049f69bdc0912f7fc16.tar.xz
misc/GenWQE: fix pci_enable_msi usage
GenWQE used to call pci_enable_msi_block to allocate a desired number of MSI's. If that was not possible pci_enable_msi_block returned with a smaller number which might be possible to allocate. GenWQE then called pci_enable_msi_block with that number. Since commit a30d0108b "GenWQE: Use pci_enable_msi_exact() instead of pci_enable_msi_block()" pci_enable_msi_exact is used which fails if the desired number of MSI's was not possible to allocate. Change GenWQE to use pci_enable_msi_range to restore the old behavior. Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com> Reviewed-by: Alexander Gordeev <agordeev@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/genwqe/card_ddcb.c')
-rw-r--r--drivers/misc/genwqe/card_ddcb.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/misc/genwqe/card_ddcb.c b/drivers/misc/genwqe/card_ddcb.c
index f0de6153bea2..dc9851a5540e 100644
--- a/drivers/misc/genwqe/card_ddcb.c
+++ b/drivers/misc/genwqe/card_ddcb.c
@@ -1251,9 +1251,7 @@ int genwqe_setup_service_layer(struct genwqe_dev *cd)
}
rc = genwqe_set_interrupt_capability(cd, GENWQE_MSI_IRQS);
- if (rc > 0)
- rc = genwqe_set_interrupt_capability(cd, rc);
- if (rc != 0) {
+ if (rc) {
rc = -ENODEV;
goto stop_kthread;
}