[Mesa-dev] [PATCH] egl/wayland: Set __DRI_IMAGE_USE_SCANOUT for shared buffers

Daniel Stone daniel at fooishbar.org
Wed Jan 27 04:43:59 PST 2016


Hi,

On 27 January 2016 at 09:34, Michel Dänzer <michel at daenzer.net> wrote:
> The compositor may have the hardware scan out directly from the buffers
> sent by the client, so we must make sure the buffers we create are
> suitable for scanout.

If the compositor wants to scan out directly, it will import via GBM,
which is in a position to reject the import if the buffer is not
suitable for scanout. So there's something missing here, either in the
GBM implementation to set magic flags when importing, or failure to
communicate tiling mode correctly, or whatever.

So for now, I would NAK this and fix the underlying problem, before
forcing every client buffer to be scanout-capable, which can cause
performance issues of its own. This also introduces a
resource-contention issue (e.g. if the display controller can only
scan out from physically-contiguous memory); you'll cause all client
buffer allocations to fail unless it can allocate a potentially
contended resource.

Please fix the radeonsi/Gallium implementations of GBM and/or wl_drm
to deal with tiling/compression correctly instead.

Cheers,
Daniel


More information about the mesa-dev mailing list