On 28/03/2022 12:18, Petri Latvala wrote:
On Mon, Mar 28, 2022 at 11:08:59AM +0100, Matthew Auld wrote:
From: CQ Tang <cq.tang@xxxxxxxxx>
On some systems lmem can be as large as 16G, which seems to trigger
various CI timeouts, and in the best case just takes a long time. For
the purposes of the test we should be able to limit to 4G, without any
big loss in coverage.
v2:
- No need to try again without the modparam; if it's not supported it
will still load the driver just fine.
v3(Petri):
- Add a helpful debug print in case the kernel is missing support for
the lmem_size modparam.
Signed-off-by: CQ Tang <cq.tang@xxxxxxxxx>
Signed-off-by: Matthew Auld <matthew.auld@xxxxxxxxx>
Cc: Thomas Hellström <thomas.hellstrom@xxxxxxxxxxxxxxx>
Cc: Nirmoy Das <nirmoy.das@xxxxxxxxxxxxxxx>
Cc: Petri Latvala <petri.latvala@xxxxxxxxx>
Reviewed-by: Thomas Hellström <thomas.hellstrom@xxxxxxxxxxxxxxx>
Reviewed-by: Nirmoy Das <nirmoy.das@xxxxxxxxx>
---
tests/i915/gem_lmem_swapping.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/tests/i915/gem_lmem_swapping.c b/tests/i915/gem_lmem_swapping.c
index 31644bcd..6cf1acec 100644
--- a/tests/i915/gem_lmem_swapping.c
+++ b/tests/i915/gem_lmem_swapping.c
@@ -526,11 +526,20 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
igt_fixture {
struct intel_execution_engine2 *e;
+ char *tmp;
- i915 = drm_open_driver(DRIVER_INTEL);
+ igt_i915_driver_unload();
+ igt_assert_eq(igt_i915_driver_load("lmem_size=4096"), 0);
+
+ i915 = __drm_open_driver(DRIVER_INTEL);
igt_require_gem(i915);
igt_require(gem_has_lmem(i915));
+ tmp = __igt_params_get(i915, "lmem_size");
+ if (!tmp)
+ igt_info("lmem_size modparam not supported on this kernel. Continuing with full lmem size. This may result in CI timeouts.");
+ free(tmp);
Newline at the end missing. With that added,
Reviewed-by: Petri Latvala <petri.latvala@xxxxxxxxx>
+
regions = gem_get_query_memory_regions(i915);
igt_require(regions);
@@ -556,6 +565,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
intel_ctx_destroy(i915, ctx);
free(regions);
close(i915);
+ igt_i915_driver_unload();
If this causes an extra module unload on legacy platforms just after
tests skips due not having local memory, is it a good idea? Would it
make sense to move the skip to before unload and reload with lmem_size
param and only unload if that condition was passed?
Regards,
Tvrtko
}
igt_exit();
--
2.34.1