UBUNTU: (fix) NVMe: Don't unmap controller registers on reset
Kamal Mostafa
kamal at canonical.com
Mon Sep 26 22:29:52 UTC 2016
BugLink: http://bugs.launchpad.net/bugs/1626894
Commit b00a726a9fd82ddd4c10344e46f0d371e1674303 upstream.
Fix nvme_pci_enable missing initializer accidentally omitted from Xenial
backport of 30d6592 "NVMe: Don't unmap controller registers on reset"
(and homogenize comment lines with the 4.4.y-stable tree).
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
drivers/nvme/host/pci.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
index cba668e..58b9e7c 100644
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
@@ -1726,6 +1726,7 @@ static int nvme_pci_enable(struct nvme_dev *dev)
if (pci_enable_device_mem(pdev))
return result;
+ dev->entry[0].vector = pdev->irq;
pci_set_master(pdev);
if (dma_set_mask_and_coherent(dev->dev, DMA_BIT_MASK(64)) &&
@@ -1738,9 +1739,8 @@ static int nvme_pci_enable(struct nvme_dev *dev)
}
/*
- * Some devices and/or platforms don't advertise or work with INTx
- * interrupts. Pre-enable a single MSIX or MSI vec for setup. We'll
- * adjust this later.
+ * Some devices don't advertse INTx interrupts, pre-enable a single
+ * MSIX vec for setup. We'll adjust this later.
*/
if (!pdev->irq) {
result = pci_enable_msix(pdev, dev->entry, 1);
@@ -1749,7 +1749,6 @@ static int nvme_pci_enable(struct nvme_dev *dev)
}
cap = lo_hi_readq(dev->bar + NVME_REG_CAP);
-
dev->q_depth = min_t(int, NVME_CAP_MQES(cap) + 1, NVME_Q_DEPTH);
dev->db_stride = 1 << NVME_CAP_STRIDE(cap);
dev->dbs = dev->bar + 4096;
--
2.7.4
More information about the kernel-team
mailing list