Commit 07ca0221 authored by Ben Walker's avatar Ben Walker Committed by Tomasz Zawadzki
Browse files

env: Force iova-mode=pa on ppc



In DPDK, the ppc iommu support does not currently allow for
iova-mode=va, but DPDK doesn't detect ppc and so still attempts
to guess iova-mode=va in some modes. Force iova-mode=pa from
SPDK to fix this.

Change-Id: I6a1ee25ab74873826ac211c3e0dfdf54afc74502
Signed-off-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/475148


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: default avatarJinYu <jin.yu@intel.com>
parent 93402cd1
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -336,6 +336,16 @@ spdk_build_eal_cmdline(const struct spdk_env_opts *opts)
	}

#ifdef __linux__

#ifdef __PPC64__
	/* On Linux + PowerPC, DPDK doesn't support VA mode at all. Unfortunately, it doesn't correctly
	 * auto-detect at the moment, so we'll just force it here. */
	args = spdk_push_arg(args, &argcount, _sprintf_alloc("--iova-mode=pa"));
	if (args == NULL) {
		return -1;
	}
#endif

	/* Set the base virtual address - it must be an address that is not in the
	 * ASAN shadow region, otherwise ASAN-enabled builds will ignore the
	 * mmap hint.