From b9eedbf403c53323409f89b6ac58967905dd1aed Mon Sep 17 00:00:00 2001 From: GangCao Date: Thu, 22 Sep 2016 16:49:07 -0400 Subject: [PATCH] nvme: use nvme_malloc for calloc to share ctrlr->ioq among processes Change-Id: I480fe43b8ac59c285999eedc2e4c2323c0401a8b Signed-off-by: GangCao --- lib/nvme/nvme_ctrlr.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/nvme/nvme_ctrlr.c b/lib/nvme/nvme_ctrlr.c index 9f62b8b03..37228c19d 100644 --- a/lib/nvme/nvme_ctrlr.c +++ b/lib/nvme/nvme_ctrlr.c @@ -349,6 +349,7 @@ nvme_ctrlr_construct_io_qpairs(struct spdk_nvme_ctrlr *ctrlr) union spdk_nvme_cap_register cap; uint32_t i, num_entries, num_trackers; int rc; + uint64_t phys_addr = 0; if (ctrlr->ioq != NULL) { /* @@ -375,7 +376,9 @@ nvme_ctrlr_construct_io_qpairs(struct spdk_nvme_ctrlr *ctrlr) */ num_trackers = nvme_min(NVME_IO_TRACKERS, (num_entries - 1)); - ctrlr->ioq = calloc(ctrlr->opts.num_io_queues, sizeof(struct spdk_nvme_qpair)); + ctrlr->ioq = nvme_malloc("nvme_ioq", + ctrlr->opts.num_io_queues * sizeof(struct spdk_nvme_qpair), + 64, &phys_addr); if (ctrlr->ioq == NULL) return -1; @@ -1159,7 +1162,7 @@ nvme_ctrlr_destruct(struct spdk_nvme_ctrlr *ctrlr) } } - free(ctrlr->ioq); + nvme_free(ctrlr->ioq); nvme_qpair_destroy(&ctrlr->adminq);