nvmf: use iterator APIs in nvmf_tgt_create_poll_group()

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I4d9a5dd4655edb8315503e7551aec1926d1cc017
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/17959
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
This commit is contained in:
Jim Harris 2023-05-04 18:52:13 +00:00 committed by Konrad Sztyber
parent 8d2e6b6711
commit 516639cf37
2 changed files with 6 additions and 9 deletions

View File

@ -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;

View File

@ -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)) {