example/nvme: Adjust logic lines about if (current_queue_depth > 0)
The original code is logically correct because spdk_nvme_qpair_process_completions() may decrease ns_ctx->current_queue_depth. But I still recommend doing an optimization so users can easily understand the code. Prioritize code cleanup more than one additional polling. Change-Id: I3613b1b4e294661fd35b7e5bebdb32e1c8352270 Signed-off-by: Hailiang Wang <hailiangx.e.wang@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14332 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: <qun.wan@intel.com> Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
This commit is contained in:
parent
8c6de5ebfd
commit
95fd6cb455
@ -474,11 +474,9 @@ work_fn(void *arg)
|
||||
}
|
||||
if (ns_ctx->current_queue_depth > 0) {
|
||||
spdk_nvme_qpair_process_completions(ns_ctx->qpair, 0);
|
||||
if (ns_ctx->current_queue_depth == 0) {
|
||||
spdk_nvme_ctrlr_free_io_qpair(ns_ctx->qpair);
|
||||
} else {
|
||||
unfinished_ctx++;
|
||||
}
|
||||
unfinished_ctx++;
|
||||
} else {
|
||||
spdk_nvme_ctrlr_free_io_qpair(ns_ctx->qpair);
|
||||
}
|
||||
}
|
||||
} while (unfinished_ctx > 0);
|
||||
@ -491,9 +489,7 @@ work_fn(void *arg)
|
||||
pthread_mutex_lock(&ctrlr_ctx->mutex);
|
||||
if (ctrlr_ctx->current_queue_depth > 0) {
|
||||
spdk_nvme_ctrlr_process_admin_completions(ctrlr_ctx->ctrlr);
|
||||
if (ctrlr_ctx->current_queue_depth > 0) {
|
||||
unfinished_ctx++;
|
||||
}
|
||||
unfinished_ctx++;
|
||||
}
|
||||
pthread_mutex_unlock(&ctrlr_ctx->mutex);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user