Ensure that we minimally exercise the aliasing_ppgtt, even on a full-ppgtt, by allocating one and similarly creating a context to use it. Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> --- drivers/gpu/drm/i915/selftests/i915_gem_context.c | 27 ++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/selftests/i915_gem_context.c index 00257949e195..6d3eca8c0c09 100644 --- a/drivers/gpu/drm/i915/selftests/i915_gem_context.c +++ b/drivers/gpu/drm/i915/selftests/i915_gem_context.c @@ -325,6 +325,7 @@ static int igt_ctx_exec(void *arg) IGT_TIMEOUT(end_time); LIST_HEAD(objects); unsigned int count, dw; + bool first = true; int err; /* Create a few different contexts (with different mm) and write @@ -344,9 +345,16 @@ static int igt_ctx_exec(void *arg) while (!time_after(jiffies, end_time)) { struct intel_engine_cs *engine; struct i915_gem_context *ctx; + struct drm_i915_file_private *fpriv; unsigned int id; - ctx = i915_gem_create_context(i915, file->driver_priv); + fpriv = file->driver_priv; + if (first) { + fpriv = NULL; + first = false; + } + + ctx = i915_gem_create_context(i915, fpriv); if (IS_ERR(ctx)) { err = PTR_ERR(ctx); goto out_unlock; @@ -392,11 +400,24 @@ static int igt_ctx_exec(void *arg) return err; } -int i915_gem_context_live_selftests(struct drm_i915_private *i915) +int i915_gem_context_live_selftests(struct drm_i915_private *dev_priv) { static const struct i915_subtest tests[] = { SUBTEST(igt_ctx_exec), }; + int err; - return i915_subtests(tests, i915); + /* Install a fake aliasing gtt for exercise */ + if (USES_FULL_PPGTT(dev_priv)) { + err = i915_gem_init_aliasing_ppgtt(dev_priv); + if (err) + return err; + } + + err = i915_subtests(tests, dev_priv); + + if (USES_FULL_PPGTT(dev_priv)) + i915_ppgtt_put(fetch_and_zero(&dev_priv->mm.aliasing_ppgtt)); + + return err; } -- 2.11.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx