[Intel-gfx] [PATCH 2/2] drm/i915: Request PIN_GLOBAL when pinning a vma for GTT relocations
Daniel Vetter
daniel at ffwll.ch
Mon Nov 3 16:20:58 CET 2014
On Fri, Oct 31, 2014 at 01:53:53PM +0000, Chris Wilson wrote:
> Always require PIN_GLOBAL when we want a mappable offset (PIN_MAPPABLE).
> This causes the pin to fixup the global binding in cases were the vma
> was already bound (and due to the proceeding bug, we considered it to be
> already mappable).
>
> References: https://bugs.freedesktop.org/show_bug.cgi?id=85671
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_gem.c | 2 +-
> drivers/gpu/drm/i915/i915_gem_execbuffer.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index fe6c602a2a00..0c82a4d2cd0c 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -3479,7 +3479,7 @@ search_free:
>
> trace_i915_vma_bind(vma, flags);
> vma->bind_vma(vma, obj->cache_level,
> - flags & (PIN_MAPPABLE | PIN_GLOBAL) ? GLOBAL_BIND : 0);
> + flags & PIN_GLOBAL ? GLOBAL_BIND : 0);
Hm, why this? If we want to reduce the interface complexity maybe we
should throw in a WARN_ON if PIN_MAPPABLE is set, but PIN_GLOBAL isnt?
Just removing this safeguard make me a bit uneasy ...
-Daniel
>
> return vma;
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> index 4b7f5c104ce0..e1ed85a6dc6d 100644
> --- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> +++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
> @@ -528,7 +528,7 @@ i915_gem_execbuffer_reserve_vma(struct i915_vma *vma,
>
> flags = 0;
> if (entry->flags & __EXEC_OBJECT_NEEDS_MAP)
> - flags |= PIN_MAPPABLE;
> + flags |= PIN_GLOBAL | PIN_MAPPABLE;
> if (entry->flags & EXEC_OBJECT_NEEDS_GTT)
> flags |= PIN_GLOBAL;
> if (entry->flags & __EXEC_OBJECT_NEEDS_BIAS)
> --
> 2.1.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
More information about the Intel-gfx
mailing list