On Tue, May 16, 2017 at 09:29:34AM +0100, Matthew Auld wrote: > When inserting into a 48bit PPGTT we need to align the vma start address > to the required page size boundary. The size will already be aligned so > no padding is needed. > > Signed-off-by: Matthew Auld <matthew.auld@xxxxxxxxx> > Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx> > Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_vma.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c > index 1aba47024656..53f6c94b2ee6 100644 > --- a/drivers/gpu/drm/i915/i915_vma.c > +++ b/drivers/gpu/drm/i915/i915_vma.c > @@ -471,6 +471,14 @@ i915_vma_insert(struct i915_vma *vma, u64 size, u64 alignment, u64 flags) > if (ret) > return ret; > > + if (i915_vm_is_48bit(vma->vm) && > + obj->gtt_page_size > I915_GTT_PAGE_SIZE) { > + unsigned int page_alignment = obj->gtt_page_size; > + > + alignment = max_t(typeof(alignment), alignment, page_alignment); > + GEM_BUG_ON(!IS_ALIGNED(vma->size, obj->gtt_page_size)); > + } > + > if (flags & PIN_OFFSET_FIXED) { We should only increase the minimum alignment for !FIXED. Otherwise the softpin user will not know what games we are playing and be able to compensate. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx