From: Christian Ehrhardt <christian.ehrha...@canonical.com>

On ppc64, without huge pages, pa would be the default but fails like:
  EAL: Cannot use IOVA as 'PA' since physical addresses are not available

On a normal system setup we'd expect an admin to set up huge pages
and for the unlikely case that they do not do that set iova=va
themselve. But the testing infrastructure does not have this conscious
admin that will do that, so fix test execution that by adjusting the
tests arguments accordingly if the conditions are met.

Signed-off-by: Christian Ehrhardt <christian.ehrha...@canonical.com>
---
 app/test/suites/meson.build | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/app/test/suites/meson.build b/app/test/suites/meson.build
index 478f245a54..8efbb165bf 100644
--- a/app/test/suites/meson.build
+++ b/app/test/suites/meson.build
@@ -10,6 +10,14 @@ test_no_huge_args = ['--no-huge', '-m', '2048']
 has_hugepage = run_command(has_hugepages_cmd, check: true).stdout().strip() != 
'0'
 message('hugepage availability: @0@'.format(has_hugepage))
 
+# On ppc64, without huge pages, pa would be the default but fails like:
+# EAL: Cannot use IOVA as 'PA' since physical addresses are not available
+if not has_hugepage
+    if arch_subdir == 'ppc'
+        test_no_huge_args += '--iova-mode=va'
+    endif
+endif
+
 # process source files to determine the different unit test suites
 # - fast_tests
 # - perf_tests
-- 
2.34.1

Reply via email to