From: CQ Tang <[email protected]>

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 <[email protected]>
Signed-off-by: Matthew Auld <[email protected]>
Cc: Thomas Hellström <[email protected]>
Cc: Nirmoy Das <[email protected]>
Cc: Petri Latvala <[email protected]>
Reviewed-by: Thomas Hellström <[email protected]>
Reviewed-by: Nirmoy Das <[email protected]>
---
 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);
+
                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();
        }
 
        igt_exit();
-- 
2.34.1

Reply via email to