summaryrefslogtreecommitdiffstats
path: root/sys/dev/nvme/nvme_qpair.c
diff options
context:
space:
mode:
authorjimharris <jimharris@FreeBSD.org>2014-03-18 18:10:35 +0000
committerjimharris <jimharris@FreeBSD.org>2014-03-18 18:10:35 +0000
commit02a90ad56252973eac4158557639e2875ec8dfb0 (patch)
tree5236beddc58a9202d15a106a877f6119e293273f /sys/dev/nvme/nvme_qpair.c
parentd8e987e9b25734e320f233ad6da0a5fdaa334954 (diff)
downloadFreeBSD-src-02a90ad56252973eac4158557639e2875ec8dfb0.zip
FreeBSD-src-02a90ad56252973eac4158557639e2875ec8dfb0.tar.gz
nvme: Allocate all MSI resources up front so that we can fall back to
INTx if necessary. Sponsored by: Intel MFC after: 3 days
Diffstat (limited to 'sys/dev/nvme/nvme_qpair.c')
-rw-r--r--sys/dev/nvme/nvme_qpair.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/sys/dev/nvme/nvme_qpair.c b/sys/dev/nvme/nvme_qpair.c
index 1ca78cf..e54adf7 100644
--- a/sys/dev/nvme/nvme_qpair.c
+++ b/sys/dev/nvme/nvme_qpair.c
@@ -1,5 +1,5 @@
/*-
- * Copyright (C) 2012-2013 Intel Corporation
+ * Copyright (C) 2012-2014 Intel Corporation
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -487,9 +487,7 @@ nvme_qpair_construct(struct nvme_qpair *qpair, uint32_t id,
* the queue's vector to get the corresponding rid to use.
*/
qpair->rid = vector + 1;
-
- qpair->res = bus_alloc_resource_any(ctrlr->dev, SYS_RES_IRQ,
- &qpair->rid, RF_ACTIVE);
+ qpair->res = ctrlr->msi_res[vector];
bus_setup_intr(ctrlr->dev, qpair->res,
INTR_TYPE_MISC | INTR_MPSAFE, NULL,
OpenPOWER on IntegriCloud