[Mesa-users] Mesa 17 Wayland EGL changes

Cédric Legrand legrand.cedric.01 at gmail.com
Mon Feb 13 12:47:05 UTC 2017


2017-02-13 13:13 GMT+01:00 Pekka Paalanen <ppaalanen at gmail.com>:

> Hi,
>
> I think you forgot to CC the mailing list. I cannot really help in
> private.
>

Sorry, this is the first time I post to a mailing list, I thought it was
automatic. Should be good this time.


> On Mon, 13 Feb 2017 12:49:59 +0100
> Cédric Legrand <legrand.cedric.01 at gmail.com> wrote:
>
> > 2017-02-13 12:23 GMT+01:00 Pekka Paalanen <ppaalanen at gmail.com>:
> >
> > > On Mon, 13 Feb 2017 11:59:01 +0100
> > > Cédric Legrand <legrand.cedric.01 at gmail.com> wrote:
> > >
> > > > Hello,
> > > >
> > > > I'm working on a Wayland compositor and the latest Mesa update broke
> my
> > > > work. After investigating, I found that I need to use the
> > > > EGL_WL_wayland_bind_display extension, otherwise my compositor
> crashes
> > > with
> > > > wl_shm reporting an invalid format. I'm not an OpenGL expert, but I
> spent
> > > > the last few days reading documentation, inspecting weston's source
> code
> > > > and googling with no luck.
> > > >
> > > > Question 1: Is it necessary to have the extension? Why don't Mesa
> support
> > > > plain old wl_shm anymore? Unless I missed something, this means we
> can't
> > > > use OpenGL anymore for software rendering in Wayland, am I right?
> > >
> > > Hi,
> > >
> > > that sounds like a new bug in Mesa, but what is this "invalid format"
> > > error you mention?
> >
> >
> > Sorry, I was a little vague on this one. The error is the wl_shm protocol
> > error:
> >  -> wl_display at 1.error(wl_shm_pool at 14, 0, "invalid format 0x34325258")
> >
> > I inspected Mesa code and it seems that it is asking for a
> WL_DRM_FORMAT_*
> > buffer, independently from the availability of the wl_drm interface.
> There
> > is no instance of WL_SHM_FORMAT_* in its source code. Of course, without
> > the interface, the server wl_shm knows nothing about these formats and
> > throws the error.
>
> The WL_SHM and WL_DRM formats are identical, except for two very
> unfortunate differences: argb8888 and xrgb8888 - the two formats that
> are required to be supported by the compositor and are most used.
>
> Hence most DRM formats are valid and correct also as wl_shm formats (by
> design), except the ones that are most popular (by historical accident).
>

My system is using ARGB8888. If I got everything correctly, this means that
Mesa should fallback to WL_SHM_FORMAT_ARGB8888 when wl_drm is not
available, right? Or should the compositor have to support
WL_DRM_FORMAT_[XA]RGB8888 (even if this is implementation specific)?


> > > I am slightly confused here. Are you talking about an application (a
> > > client), your compositor, or your compositor as a Wayland client?
> > >
> >
> > I talking about my compositor client in this case, but even regular
> clients
> > should be affected by this problem.
>
> Compositor's client, or client compositor i.e. a nested compositor.
>
> That is quite confusing. When talking about a compositor, it is assumed
> to be the Wayland server for the discussion unless otherwise explicitly
> mentioned.
>
> Anyway, yes, the client purpose should not matter.
>
>
> Thanks,
> pq
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-users/attachments/20170213/36ce6fde/attachment.html>


More information about the mesa-users mailing list