drm/i915: Assert that we never create a vma for the aliasing_ppgtt
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 9 Feb 2017 11:19:33 +0000 (11:19 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 9 Feb 2017 12:22:15 +0000 (12:22 +0000)
The aliasing_ppgtt is just a container for the HW context that mirrors
the global gtt. It should never be used directly, so assert if we make
the mistake of trying to allocate a VMA for it.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170209111933.12420-1-chris@chris-wilson.co.uk
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
drivers/gpu/drm/i915/i915_vma.c

index 155906e848120ae2e1de533d81658080c546888d..e75494c1ef52fb482a00f28f92af091ed0859915 100644 (file)
@@ -78,6 +78,9 @@ vma_create(struct drm_i915_gem_object *obj,
        struct rb_node *rb, **p;
        int i;
 
+       /* The aliasing_ppgtt should never be used directly! */
+       GEM_BUG_ON(vm == &vm->i915->mm.aliasing_ppgtt->base);
+
        vma = kmem_cache_zalloc(vm->i915->vmas, GFP_KERNEL);
        if (vma == NULL)
                return ERR_PTR(-ENOMEM);