Commit 106684ff authored by Ben Walker's avatar Ben Walker
Browse files

bdev/nvme: Validate adrfam when printing out config file

parent a1bcc450
Loading
Loading
Loading
Loading
+24 −6
Original line number Diff line number Diff line
@@ -1414,17 +1414,35 @@ bdev_nvme_get_spdk_running_config(FILE *fp)
		"# Y is the NSID (starts at 1).\n");

	TAILQ_FOREACH(nvme_ctrlr, &g_nvme_ctrlrs, tailq) {
		const char *trtype;

		trtype = spdk_nvme_transport_id_trtype_str(nvme_ctrlr->trid.trtype);
		if (!trtype) {
			continue;
		}

		if (nvme_ctrlr->trid.trtype == SPDK_NVME_TRANSPORT_PCIE) {
			fprintf(fp, "TransportId \"trtype:%s traddr:%s\" %s\n",
				spdk_nvme_transport_id_trtype_str(nvme_ctrlr->trid.trtype),
				trtype,
				nvme_ctrlr->trid.traddr, nvme_ctrlr->name);
		} else {
			const char *adrfam;

			adrfam = spdk_nvme_transport_id_adrfam_str(nvme_ctrlr->trid.adrfam);

			if (adrfam) {
				fprintf(fp, "TransportId \"trtype:%s adrfam:%s traddr:%s trsvcid:%s subnqn:%s\" %s\n",
				spdk_nvme_transport_id_trtype_str(nvme_ctrlr->trid.trtype),
				spdk_nvme_transport_id_adrfam_str(nvme_ctrlr->trid.adrfam),
					trtype,	adrfam,
					nvme_ctrlr->trid.traddr, nvme_ctrlr->trid.trsvcid,
					nvme_ctrlr->trid.subnqn, nvme_ctrlr->name);
			} else {
				fprintf(fp, "TransportId \"trtype:%s traddr:%s trsvcid:%s subnqn:%s\" %s\n",
					trtype,
					nvme_ctrlr->trid.traddr, nvme_ctrlr->trid.trsvcid,
					nvme_ctrlr->trid.subnqn, nvme_ctrlr->name);
			}

		}
	}

	fprintf(fp, "\n"