[Intel-gfx] pin OABUFFER to GGTT

Mateo Lozano, Oscar oscar.mateo at intel.com
Tue Jul 1 18:34:48 CEST 2014


> -----Original Message-----
> From: Chris Wilson [mailto:chris at chris-wilson.co.uk]
> Sent: Tuesday, July 01, 2014 5:30 PM
> To: Mateo Lozano, Oscar
> Cc: Intel-gfx at lists.freedesktop.org; Madajczak, Tomasz
> Subject: Re: [Intel-gfx] pin OABUFFER to GGTT
> 
> On Tue, Jul 01, 2014 at 04:24:56PM +0000, Mateo Lozano, Oscar wrote:
> > Submitting again (this time copying the mailing list correctly):
> >
> > The bo_pin ioctl has been discarded in GEN6+ with this patch:
> >
> >     drm/i915: Reject the pin ioctl on gen6+
> >
> >     Especially with ppgtt this kinda stopped making sense. And if we
> >     indeed need this to hack around an issue, we need something that also
> >     works for non-root.
> >
> >     Signed-off-by: Daniel Vetter daniel.vetter at ffwll.ch
> >
> > The thing is, the performance team used this call to pin the OABUFFER to
> GGTT and then mapping it to userspace. This OABUFFER cannot be in PPGTT
> because: "When each context has its own Per Process GTT, this field should
> be always set to GGTT." (BSpec dixit).
> >
> > Can we re-enable it? or should we find an alternative for this case?
> 
> EXEC_OBJECT_NEEDS_GTT?
> -Chris

The object (AFAICT, please Tomasz correct me if I am wrong) is not really used inside any batchbuffer.
Also:

		if (exec[i].flags & EXEC_OBJECT_NEEDS_GTT &&
		    USES_FULL_PPGTT(vm->dev)) {
			ret = -EINVAL;
			goto err;
		}



More information about the Intel-gfx mailing list