GNOME Bugzilla – Bug 791617
waylandsink: fix dmabuf import for zwp_linux_dmabuf_v1 interface version 3
Last modified: 2017-12-14 17:11:54 UTC
Created attachment 365545 [details] [review] wldisplay: update to zwp_linux_dmabuf_v1 interface version 3 Weston 3.0 implements the zwp_linux_dmabuf_v1 interface version 3, which sends "modifier" events. As far as I am aware, "format" events, which are likely to become deprecated, have never been sent. Therefore waylandsink currently always probes an empty format list for video/x-raw(memory:DMABuf). This can be fixed by updating the the zwp_linux_dmabuf_v1 interface to version 3. As long as DRM modifiers can't be negotiated through caps, all formats that are reported with non-linear modifiers can be dropped.
Review of attachment 365545 [details] [review]: I have the same patch, but it's just hiding a compositor bug. We properly advertise version 1 where this new callback does not exist, so it's wrong to set it. ::: ext/wayland/wldisplay.c @@ +248,3 @@ } else if (g_strcmp0 (interface, "zwp_linux_dmabuf_v1") == 0) { self->dmabuf = + wl_registry_bind (registry, id, &zwp_linux_dmabuf_v1_interface, 3); Make absolutly no sense to request 3 if we we implement 1. I'll accept moving forward if something is done with the new feature. Meanwhile, complain to the respective compositor project.