From 681f5e6e8fd59c28b113e3cee4793e4f2960c2eb Mon Sep 17 00:00:00 2001 From: Konrad Sztyber Date: Tue, 3 Aug 2021 14:42:47 +0200 Subject: [PATCH] nvme/tcp: pass async_mode when creating qpairs This allows for creating admin qpair in an asynchronous mode and I/O qpairs based on what the user specified in spdk_nvme_io_qpair_opts. Signed-off-by: Konrad Sztyber Change-Id: I1801ea76d5a08b1bdc558eb0f18648f59454b654 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9077 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins Reviewed-by: Shuhei Matsumoto Reviewed-by: Aleksey Marchuk Reviewed-by: Monica Kenguva --- lib/nvme/nvme_tcp.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/nvme/nvme_tcp.c b/lib/nvme/nvme_tcp.c index 5e30935835..dd702fe2ed 100644 --- a/lib/nvme/nvme_tcp.c +++ b/lib/nvme/nvme_tcp.c @@ -2017,7 +2017,7 @@ static struct spdk_nvme_qpair * nvme_tcp_ctrlr_create_qpair(struct spdk_nvme_ctrlr *ctrlr, uint16_t qid, uint32_t qsize, enum spdk_nvme_qprio qprio, - uint32_t num_requests) + uint32_t num_requests, bool async) { struct nvme_tcp_qpair *tqpair; struct spdk_nvme_qpair *qpair; @@ -2031,7 +2031,7 @@ nvme_tcp_ctrlr_create_qpair(struct spdk_nvme_ctrlr *ctrlr, tqpair->num_entries = qsize; qpair = &tqpair->qpair; - rc = nvme_qpair_init(qpair, qid, ctrlr, qprio, num_requests, false); + rc = nvme_qpair_init(qpair, qid, ctrlr, qprio, num_requests, async); if (rc != 0) { free(tqpair); return NULL; @@ -2059,7 +2059,7 @@ nvme_tcp_ctrlr_create_io_qpair(struct spdk_nvme_ctrlr *ctrlr, uint16_t qid, const struct spdk_nvme_io_qpair_opts *opts) { return nvme_tcp_ctrlr_create_qpair(ctrlr, qid, opts->io_queue_size, opts->qprio, - opts->io_queue_requests); + opts->io_queue_requests, opts->async_mode); } static struct spdk_nvme_ctrlr *nvme_tcp_ctrlr_construct(const struct spdk_nvme_transport_id *trid, @@ -2086,7 +2086,7 @@ static struct spdk_nvme_ctrlr *nvme_tcp_ctrlr_construct(const struct spdk_nvme_t tctrlr->ctrlr.adminq = nvme_tcp_ctrlr_create_qpair(&tctrlr->ctrlr, 0, tctrlr->ctrlr.opts.admin_queue_size, 0, - tctrlr->ctrlr.opts.admin_queue_size); + tctrlr->ctrlr.opts.admin_queue_size, true); if (!tctrlr->ctrlr.adminq) { SPDK_ERRLOG("failed to create admin qpair\n"); nvme_tcp_ctrlr_destruct(&tctrlr->ctrlr);