Commit 5d96201d authored by Jinlong Chen's avatar Jinlong Chen Committed by Jim Harris
Browse files

env: match legacy mem mode config with DPDK



DPDK uses legacy mem mode implicitly when running in FreeBSD or in
no-huge mode. Update SPDK logic to match the behaviour.

Change-Id: I14fb28f70c24aea21da53995cd335013ffcc8063
Signed-off-by: default avatarJinlong Chen <chenjinlong.cjl@alibaba-inc.com>
Reviewed-on: https://review.spdk.io/c/spdk/spdk/+/25519


Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK Automated Test System <spdkbot@gmail.com>
Reviewed-by: default avatarGangCao <gang.cao@intel.com>
Reviewed-by: default avatarJim Harris <jim.harris@nvidia.com>
Reviewed-by: default avatarKonrad Sztyber <ksztyber@nvidia.com>
parent 45aba055
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -735,10 +735,17 @@ spdk_env_init(const struct spdk_env_opts *opts_user)
		return -rte_errno;
	}

#ifdef __FreeBSD__
	/**
	 * DPDK always uses legacy mem mode in FreeBSD.
	 */
	legacy_mem = true;
#else
	legacy_mem = false;
	if (opts->env_context && strstr(opts->env_context, "--legacy-mem") != NULL) {
	if (opts->no_huge || (opts->env_context && strstr(opts->env_context, "--legacy-mem") != NULL)) {
		legacy_mem = true;
	}
#endif

	rc = spdk_env_dpdk_post_init(legacy_mem);
	if (rc == 0) {
+10 −1
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ main(int argc, char **argv)
	int ret;
	int i;
	struct spdk_nvme_detach_ctx *detach_ctx = NULL;
	bool legacy_mem;

	printf("Starting DPDK initialization...\n");
	ret = rte_eal_init(argc, argv);
@@ -77,7 +78,15 @@ main(int argc, char **argv)
	}

	printf("Starting SPDK post initialization...\n");
	ret = spdk_env_dpdk_post_init(false);
#ifdef __FreeBSD__
	/**
	 * DPDK always uses legacy mem mode in FreeBSD.
	 */
	legacy_mem = true;
#else
	legacy_mem = false;
#endif
	ret = spdk_env_dpdk_post_init(legacy_mem);
	if (ret < 0) {
		fprintf(stderr, "Failed to initialize SPDK\n");
		return -1;