diff options
| author | Krzysztof Karas <krzysztof.karas@intel.com> | 2026-05-08 11:02:14 +0300 |
|---|---|---|
| committer | Andi Shyti <andi.shyti@linux.intel.com> | 2026-05-19 14:29:27 +0300 |
| commit | 82eb94b1fa1317d470420cccd1da75ff7f1811b3 (patch) | |
| tree | 765cc925c5f31c315f23cd7d1d8a70cd9fb11a47 /drivers | |
| parent | e8c3344765aa3f5c36ddbc2ec06a25c118f1bcfb (diff) | |
| download | linux-82eb94b1fa1317d470420cccd1da75ff7f1811b3.tar.xz | |
drm/i915/selftests: Run vma tests only if current->mm is present
This set of tests require userspace memory to map objects, so
run them only if this that memory is available.
Signed-off-by: Krzysztof Karas <krzysztof.karas@intel.com>
Reviewed-by: Sebastian Brzezinka <sebastian.brzezinka@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Reviewed-by: Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com>
Reviewed-by: MichaĆ Grzelak <michal.grzelak@intel.com>
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://lore.kernel.org/r/20260508080214.1979686-3-krzysztof.karas@intel.com
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c b/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c index 9d454d0b46f2..d01acfb7d93d 100644 --- a/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c +++ b/drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c @@ -1847,11 +1847,12 @@ static int igt_mmap_revoke(void *arg) int i915_gem_mman_live_selftests(struct drm_i915_private *i915) { int ret; - bool unuse_mm = false; static const struct i915_subtest tests[] = { SUBTEST(igt_partial_tiling), SUBTEST(igt_smoke_tiling), SUBTEST(igt_mmap_offset_exhaustion), + }; + static const struct i915_subtest vma_tests[] = { SUBTEST(igt_mmap), SUBTEST(igt_mmap_migrate), SUBTEST(igt_mmap_access), @@ -1859,15 +1860,14 @@ int i915_gem_mman_live_selftests(struct drm_i915_private *i915) SUBTEST(igt_mmap_gpu), }; - if (!current->mm) { - kthread_use_mm(current->active_mm); - unuse_mm = true; - } - ret = i915_live_subtests(tests, i915); + if (ret) + return ret; - if (unuse_mm) - kthread_unuse_mm(current->active_mm); + if (current->mm) + ret = i915_live_subtests(vma_tests, i915); + else + pr_warn("No current->mm to safely borrow userspace memory from. Skipping VMA tests.\n"); return ret; } |
