Commit 30020c2f authored by Jim Harris's avatar Jim Harris Committed by Konrad Sztyber
Browse files

nvmf/rdma: simplify get_optimal_poll_group logic



Use a local variable to hold the qpair count.

While here, also use pg_current to get the min_value,
this is a bit simpler to read than things like
(*pg)->group.

Signed-off-by: default avatarJim Harris <james.r.harris@intel.com>
Change-Id: I65771fb469f021e9e77b8a6c117841b8f4b66af5
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15694


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
parent bb926e80
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -3500,6 +3500,7 @@ nvmf_rdma_get_optimal_poll_group(struct spdk_nvmf_qpair *qpair)
	struct spdk_nvmf_rdma_transport *rtransport;
	struct spdk_nvmf_rdma_poll_group **pg;
	struct spdk_nvmf_transport_poll_group *result;
	uint32_t count;

	rtransport = SPDK_CONTAINEROF(qpair->transport, struct spdk_nvmf_rdma_transport, transport);

@@ -3517,16 +3518,16 @@ nvmf_rdma_get_optimal_poll_group(struct spdk_nvmf_qpair *qpair)
		pg_min = *pg;
		pg_start = *pg;
		pg_current = *pg;
		min_value = (*pg)->group.group->stat.current_io_qpairs;
		min_value = pg_current->group.group->stat.current_io_qpairs;

		while (pg_current->group.group->stat.current_io_qpairs) {
		while ((count = pg_current->group.group->stat.current_io_qpairs) > 0) {
			pg_current = TAILQ_NEXT(pg_current, link);
			if (pg_current == NULL) {
				pg_current = TAILQ_FIRST(&rtransport->poll_groups);
			}

			if (pg_current->group.group->stat.current_io_qpairs < min_value) {
				min_value = pg_current->group.group->stat.current_io_qpairs;
			if (count < min_value) {
				min_value = count;
				pg_min = pg_current;
			}