From: mlin@kernel.org (Ming Lin)
Subject: [PATCH] nvme: add helper nvme_cleanup_cmd()
Date: Sat, 16 Apr 2016 22:35:46 -0700 [thread overview]
Message-ID: <1460871346-10811-1-git-send-email-mlin@kernel.org> (raw)
From: Ming Lin <ming.l@ssi.samsung.com>
This hides command cleanup into core.c and fabrics drivers will
also use it.
Signed-off-by: Ming Lin <ming.l at ssi.samsung.com>
---
drivers/nvme/host/core.c | 7 +++++++
drivers/nvme/host/nvme.h | 1 +
drivers/nvme/host/pci.c | 3 +--
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 4eb5759..7dd9905 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -243,6 +243,13 @@ int nvme_setup_cmd(struct nvme_ns *ns, struct request *req,
}
EXPORT_SYMBOL_GPL(nvme_setup_cmd);
+void nvme_cleanup_cmd(struct request *req)
+{
+ if (req->cmd_flags & REQ_DISCARD)
+ kfree(req->completion_data);
+}
+EXPORT_SYMBOL_GPL(nvme_cleanup_cmd);
+
/*
* Returns 0 on success. If the result is negative, it's a Linux error code;
* if the result is positive, it's an NVM Express status code
diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h
index 8e8fae8..4f9ddbf 100644
--- a/drivers/nvme/host/nvme.h
+++ b/drivers/nvme/host/nvme.h
@@ -220,6 +220,7 @@ struct request *nvme_alloc_request(struct request_queue *q,
void nvme_requeue_req(struct request *req);
int nvme_setup_cmd(struct nvme_ns *ns, struct request *req,
struct nvme_command *cmd);
+void nvme_cleanup_cmd(struct request *req);
int nvme_submit_sync_cmd(struct request_queue *q, struct nvme_command *cmd,
void *buf, unsigned bufflen);
int __nvme_submit_sync_cmd(struct request_queue *q, struct nvme_command *cmd,
diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
index ff3c8d7..0569cbf 100644
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
@@ -363,8 +363,7 @@ static void nvme_free_iod(struct nvme_dev *dev, struct request *req)
__le64 **list = iod_list(req);
dma_addr_t prp_dma = iod->first_dma;
- if (req->cmd_flags & REQ_DISCARD)
- kfree(req->completion_data);
+ nvme_cleanup_cmd(req);
if (iod->npages == 0)
dma_pool_free(dev->prp_small_pool, list[0], prp_dma);
--
1.9.1
next reply other threads:[~2016-04-17 5:35 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-17 5:35 Ming Lin [this message]
2016-04-17 18:08 ` [PATCH] nvme: add helper nvme_cleanup_cmd() Christoph Hellwig
2016-04-18 15:28 ` Keith Busch
2016-04-18 17:37 ` Ming Lin
2016-04-18 15:46 ` Sagi Grimberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1460871346-10811-1-git-send-email-mlin@kernel.org \
--to=mlin@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.