NVMe: Change get_nvmeq to take a dev instead of a namespace
Upcoming patches require calling get_nvmeq when we don't have a namespace. Some callers already have the device in a local variable anyway. Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
This commit is contained in:
parent
c2f5b65020
commit
040a93b52a
|
@ -257,9 +257,9 @@ static void *cancel_cmdid(struct nvme_queue *nvmeq, int cmdid,
|
||||||
return ctx;
|
return ctx;
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct nvme_queue *get_nvmeq(struct nvme_ns *ns)
|
static struct nvme_queue *get_nvmeq(struct nvme_dev *dev)
|
||||||
{
|
{
|
||||||
return ns->dev->queues[get_cpu() + 1];
|
return dev->queues[get_cpu() + 1];
|
||||||
}
|
}
|
||||||
|
|
||||||
static void put_nvmeq(struct nvme_queue *nvmeq)
|
static void put_nvmeq(struct nvme_queue *nvmeq)
|
||||||
|
@ -606,7 +606,7 @@ static int nvme_submit_bio_queue(struct nvme_queue *nvmeq, struct nvme_ns *ns,
|
||||||
static int nvme_make_request(struct request_queue *q, struct bio *bio)
|
static int nvme_make_request(struct request_queue *q, struct bio *bio)
|
||||||
{
|
{
|
||||||
struct nvme_ns *ns = q->queuedata;
|
struct nvme_ns *ns = q->queuedata;
|
||||||
struct nvme_queue *nvmeq = get_nvmeq(ns);
|
struct nvme_queue *nvmeq = get_nvmeq(ns->dev);
|
||||||
int result = -EBUSY;
|
int result = -EBUSY;
|
||||||
|
|
||||||
spin_lock_irq(&nvmeq->q_lock);
|
spin_lock_irq(&nvmeq->q_lock);
|
||||||
|
@ -1103,7 +1103,7 @@ static int nvme_submit_io(struct nvme_ns *ns, struct nvme_user_io __user *uio)
|
||||||
/* XXX: metadata */
|
/* XXX: metadata */
|
||||||
prps = nvme_setup_prps(dev, &c.common, sg, &length, GFP_KERNEL);
|
prps = nvme_setup_prps(dev, &c.common, sg, &length, GFP_KERNEL);
|
||||||
|
|
||||||
nvmeq = get_nvmeq(ns);
|
nvmeq = get_nvmeq(dev);
|
||||||
/*
|
/*
|
||||||
* Since nvme_submit_sync_cmd sleeps, we can't keep preemption
|
* Since nvme_submit_sync_cmd sleeps, we can't keep preemption
|
||||||
* disabled. We may be preempted at any point, and be rescheduled
|
* disabled. We may be preempted at any point, and be rescheduled
|
||||||
|
|
Loading…
Reference in New Issue