[Intel-gfx] [PATCH 1/3] drm/i915: Enable FBC at Haswell.

Chris Wilson chris at chris-wilson.co.uk
Wed Apr 10 11:28:53 CEST 2013


On Wed, Apr 10, 2013 at 10:52:20AM +0200, Daniel Vetter wrote:
> So the idea is now to enable fbc/psr when pageflipping and disable it
> as soon as we detect a frontbuffer rendering event. Thanks to the
> current gem api we can do this pretty cheaply:
> - CPU writes to the frontbuffer call sw_finish_ioctl. I need to still
> check whether that only applies to cpu maps or also gtt maps.
> - GTT writes could easily be caught by unmapping userspace ptes (we
> have the infrastructure for that already), but I hope we can avoid
> that.
> - Currently we have some fragile code in our execbuf handler to detect
> render of the gpu. I think we can rip this all out and instead detect
> frontbuffer gpu rendering in the busy ioctl - that has been
> established as the canonical interface for userspace to ask the kernel
> to flush the frontbuffer. Aside: This semantics was not designed, but
> we've realized that this is what it is eventually ;-)

To add my wishlist item:
- a global property / param indicating the availabilty of FBC
- a crtc property indicating the status of FBC
That way X can avoid front buffer rendering when it would incur
penalties and is likely to result in corruption (I'm sure the next
generation of FBC will work, or maybe the next).
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre



More information about the Intel-gfx mailing list