Commit 516639cf authored by Jim Harris's avatar Jim Harris Committed by Konrad Sztyber
Browse files

nvmf: use iterator APIs in nvmf_tgt_create_poll_group()



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


Reviewed-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <smatsumoto@nvidia.com>
parent 8d2e6b67
Loading
Loading
Loading
Loading
+4 −9
Original line number Diff line number Diff line
@@ -170,8 +170,8 @@ nvmf_tgt_create_poll_group(void *io_device, void *ctx_buf)
	struct spdk_nvmf_tgt *tgt = io_device;
	struct spdk_nvmf_poll_group *group = ctx_buf;
	struct spdk_nvmf_transport *transport;
	struct spdk_nvmf_subsystem *subsystem;
	struct spdk_thread *thread = spdk_get_thread();
	uint32_t sid;
	int rc;

	group->tgt = tgt;
@@ -199,14 +199,9 @@ nvmf_tgt_create_poll_group(void *io_device, void *ctx_buf)
		return -ENOMEM;
	}

	for (sid = 0; sid < tgt->max_subsystems; sid++) {
		struct spdk_nvmf_subsystem *subsystem;

		subsystem = tgt->subsystems[sid];
		if (!subsystem) {
			continue;
		}

	for (subsystem = spdk_nvmf_subsystem_get_first(tgt);
	     subsystem != NULL;
	     subsystem = spdk_nvmf_subsystem_get_next(subsystem)) {
		if (nvmf_poll_group_add_subsystem(group, subsystem, NULL, NULL) != 0) {
			nvmf_tgt_cleanup_poll_group(group);
			return -1;
+2 −0
Original line number Diff line number Diff line
@@ -163,6 +163,7 @@ test_nvmf_tgt_create_poll_group(void)
	tgt.subsystems[0]->max_nsid = 1;
	tgt.subsystems[0]->ns = calloc(1, sizeof(struct spdk_nvmf_ns *));
	SPDK_CU_ASSERT_FATAL(tgt.subsystems[0]->ns != NULL);
	MOCK_SET(spdk_nvmf_subsystem_get_first, &subsystem);

	tgt.subsystems[0]->ns[0] = &ns;
	ns.crkey = 0xaa;
@@ -201,6 +202,7 @@ test_nvmf_tgt_create_poll_group(void)
	CU_ASSERT(tgt.num_poll_groups == 0);
	free(tgt.subsystems[0]->ns);
	free(tgt.subsystems);
	MOCK_CLEAR(spdk_nvmf_subsystem_get_first);

	spdk_thread_exit(thread);
	while (!spdk_thread_is_exited(thread)) {