diff options
author | Alexander Gordeev <agordeev@redhat.com> | 2014-02-26 04:02:41 -0500 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2014-03-13 16:56:39 -0400 |
commit | 371ff93a72a1aa14773e2e17548796db8c004a6c (patch) | |
tree | 4e0ef1d797bad1cad9d43bc90e69dfa2ad75cc8d | |
parent | 106fd892bc714a9b7c28daba98a3623a41c32f1a (diff) |
cciss: Fallback to MSI rather than to INTx if MSI-X failed
Currently the driver falls back to INTx mode when MSI-X
initialization failed. This is a suboptimal behaviour
for chips that also support MSI. This update changes that
behaviour and falls back to MSI mode in case MSI-X mode
initialization failed.
Signed-off-by: Alexander Gordeev <agordeev@redhat.com>
Cc: Mike Miller <mike.miller@hp.com>
Cc: iss_storagedev@hp.com
Cc: Jens Axboe <axboe@kernel.dk>
Cc: linux-pci@vger.kernel.org
Signed-off-by: Jens Axboe <axboe@fb.com>
-rw-r--r-- | drivers/block/cciss.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index 036e8ab86c71..73894ca33956 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
@@ -4092,11 +4092,9 @@ static void cciss_interrupt_mode(ctlr_info_t *h) | |||
4092 | if (err > 0) { | 4092 | if (err > 0) { |
4093 | dev_warn(&h->pdev->dev, | 4093 | dev_warn(&h->pdev->dev, |
4094 | "only %d MSI-X vectors available\n", err); | 4094 | "only %d MSI-X vectors available\n", err); |
4095 | goto default_int_mode; | ||
4096 | } else { | 4095 | } else { |
4097 | dev_warn(&h->pdev->dev, | 4096 | dev_warn(&h->pdev->dev, |
4098 | "MSI-X init failed %d\n", err); | 4097 | "MSI-X init failed %d\n", err); |
4099 | goto default_int_mode; | ||
4100 | } | 4098 | } |
4101 | } | 4099 | } |
4102 | if (pci_find_capability(h->pdev, PCI_CAP_ID_MSI)) { | 4100 | if (pci_find_capability(h->pdev, PCI_CAP_ID_MSI)) { |