[Intel-gfx] [PATCH v2] drm/i915: Fallback to using unmappable memory for scanout

Chris Wilson chris at chris-wilson.co.uk
Fri Mar 20 03:49:19 PDT 2015


On Fri, Mar 20, 2015 at 11:29:25AM +0100, Daniel Vetter wrote:
> On Thu, Mar 19, 2015 at 04:50:22PM +0000, Chris Wilson wrote:
> > On Thu, Mar 19, 2015 at 05:35:17PM +0100, Daniel Vetter wrote:
> > > On Thu, Mar 19, 2015 at 11:29:40AM +0000, Chris Wilson wrote:
> > > > +	if (obj->map_and_fenceable) {
> > > > +		/* Install a fence for tiled scan-out. Pre-i965 always needs a
> > > > +		 * fence, whereas 965+ only requires a fence if using
> > > > +		 * framebuffer compression.  For simplicity, we always, when
> > > > +		 * possible, install a fence as the cost is not that onerous.

> Oh right I've forgotten that fbc hw only works with X tiled and that we
> use the fence_reg as a proxy. Adding a comment would be useful though.

* If we fail to fence the tiled scanout, then either the modeset will
* reject the change (which is highly unlikely as the affected systems,
* all but one, do not have unmappable space) or we will not be able to
* enable full powersaving techniques (also likely not to apply due to
* various limits FBC and the like impose on the size of the buffer,
* which presumably we violated anyway with this unmappable buffer).
* Anyway, it is presumably better to stumble onwards with something and
* try to run the system in a "less than optimal" mode that matches the
* user configuration.

> > > > +		 */
> > > > +		ret = i915_gem_object_get_fence(obj);
> > > > +		if (ret)
> > > > +			goto err_unpin;

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list