Skip to content

Commit 34b1c1c

Browse files
mwasiakintAndi Shyti
authored andcommitted
i915/selftest/igt_mmap: let mmap tests run in kthread
When the driver is loaded on the system with numa nodes it might be run in a kthread, which makes it impossible to use current->mm in the selftest. This patch allows the selftest to use current->mm by using active_mm. Signed-off-by: Mikolaj Wasiak <mikolaj.wasiak@intel.com> Reviewed-by: Eugene Kobyak <eugene.kobyak@intel.com> Reviewed-by: Krzysztof Niemiec <krzysztof.niemiec@intel.com> Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com> Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com> Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/2w6pt2hnemndwmanwhyn3keexa6vtha7rmo6rqoerkmyxhbrh2@ls7lndjpia6z
1 parent bfef148 commit 34b1c1c

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

drivers/gpu/drm/i915/gem/selftests/i915_gem_mman.c

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1837,6 +1837,8 @@ static int igt_mmap_revoke(void *arg)
18371837

18381838
int i915_gem_mman_live_selftests(struct drm_i915_private *i915)
18391839
{
1840+
int ret;
1841+
bool unuse_mm = false;
18401842
static const struct i915_subtest tests[] = {
18411843
SUBTEST(igt_partial_tiling),
18421844
SUBTEST(igt_smoke_tiling),
@@ -1848,5 +1850,15 @@ int i915_gem_mman_live_selftests(struct drm_i915_private *i915)
18481850
SUBTEST(igt_mmap_gpu),
18491851
};
18501852

1851-
return i915_live_subtests(tests, i915);
1853+
if (!current->mm) {
1854+
kthread_use_mm(current->active_mm);
1855+
unuse_mm = true;
1856+
}
1857+
1858+
ret = i915_live_subtests(tests, i915);
1859+
1860+
if (unuse_mm)
1861+
kthread_unuse_mm(current->active_mm);
1862+
1863+
return ret;
18521864
}

0 commit comments

Comments
 (0)