Commit da2fc15f authored by Shuhei Matsumoto's avatar Shuhei Matsumoto Committed by Tomasz Zawadzki
Browse files

bdev/nvme: Factor out updating ANA state of ns operation



Signed-off-by: default avatarShuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: Ib703f57c4bc00c7305856b2f0613fe68428c953e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/12193


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: default avatarMonica Kenguva <monica.kenguva@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
parent b0f4249c
Loading
Loading
Loading
Loading
+12 −5
Original line number Diff line number Diff line
@@ -2624,6 +2624,15 @@ bdev_nvme_parse_ana_log_page(struct nvme_ctrlr *nvme_ctrlr,
	return rc;
}

static void
_nvme_ns_set_ana_state(struct nvme_ns *nvme_ns,
		       const struct spdk_nvme_ana_group_descriptor *desc)
{
	nvme_ns->ana_group_id = desc->ana_group_id;
	nvme_ns->ana_state = desc->ana_state;
	nvme_ns->ana_state_updating = false;
}

static int
nvme_ns_set_ana_state(const struct spdk_nvme_ana_group_descriptor *desc, void *cb_arg)
{
@@ -2634,8 +2643,8 @@ nvme_ns_set_ana_state(const struct spdk_nvme_ana_group_descriptor *desc, void *c
		if (desc->nsid[i] != spdk_nvme_ns_get_id(nvme_ns->ns)) {
			continue;
		}
		nvme_ns->ana_group_id = desc->ana_group_id;
		nvme_ns->ana_state = desc->ana_state;

		_nvme_ns_set_ana_state(nvme_ns, desc);
		return 1;
	}

@@ -3268,9 +3277,7 @@ nvme_ctrlr_set_ana_states(const struct spdk_nvme_ana_group_descriptor *desc,
			continue;
		}

		nvme_ns->ana_group_id = desc->ana_group_id;
		nvme_ns->ana_state = desc->ana_state;
		nvme_ns->ana_state_updating = false;
		_nvme_ns_set_ana_state(nvme_ns, desc);
	}

	return 0;