From ee292e4b55e5f387bca4a3bae09444a2e5fbaf2a Mon Sep 17 00:00:00 2001 From: Liang Yan Date: Thu, 4 Feb 2016 14:06:46 +0800 Subject: [PATCH] spdk: Add callback NULL check for readv and writev command Change-Id: I04286c97ff0536127dbbc4bd1d65ee44a128ecf5 Signed-off-by: Liang Yan --- lib/nvme/nvme_ns_cmd.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/nvme/nvme_ns_cmd.c b/lib/nvme/nvme_ns_cmd.c index f0c00c234..e2621d508 100644 --- a/lib/nvme/nvme_ns_cmd.c +++ b/lib/nvme/nvme_ns_cmd.c @@ -203,6 +203,9 @@ nvme_ns_cmd_readv(struct nvme_namespace *ns, uint64_t lba, uint32_t lba_count, struct nvme_request *req; struct nvme_payload payload; + if (reset_sgl_fn == NULL || next_sge_fn == NULL) + return EINVAL; + payload.type = NVME_PAYLOAD_TYPE_SGL; payload.u.sgl.reset_sgl_fn = reset_sgl_fn; payload.u.sgl.next_sge_fn = next_sge_fn; @@ -245,6 +248,9 @@ nvme_ns_cmd_writev(struct nvme_namespace *ns, uint64_t lba, uint32_t lba_count, struct nvme_request *req; struct nvme_payload payload; + if (reset_sgl_fn == NULL || next_sge_fn == NULL) + return EINVAL; + payload.type = NVME_PAYLOAD_TYPE_SGL; payload.u.sgl.reset_sgl_fn = reset_sgl_fn; payload.u.sgl.next_sge_fn = next_sge_fn;