bdev/nvme: don't connect to discovered discovery subsystems

For now, if the discovery service finds a discovery subsystem,
don't connect to it.  Support for nested discovery controllers
will be coming soon, but for now we need to make sure we don't
try to connect to a discovery subsystem as if it was an NVM
subsystem.

Signed-off-by: Jim Harris <james.r.harris@intel.com>
Change-Id: I00234718b0e39eda6e1cb1b1150a4fadcf6d8b11
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11546
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
This commit is contained in:
Jim Harris 2022-02-10 13:07:31 +00:00 committed by Tomasz Zawadzki
parent 06ef6757a9
commit 09240a1c3c

View File

@ -4275,6 +4275,9 @@ discovery_log_page_cb(void *cb_arg, int rc, const struct spdk_nvme_cpl *cpl,
for (i = 0; i < numrec; i++) {
found = false;
new_entry = &log_page->entries[i];
if (new_entry->subtype == SPDK_NVMF_SUBTYPE_DISCOVERY) {
continue;
}
TAILQ_FOREACH(ctrlr_ctx, &ctx->ctrlr_ctxs, tailq) {
old_entry = &ctrlr_ctx->entry;
if (!memcmp(new_entry, old_entry, sizeof(*new_entry))) {