Bug 53361 - Commit of Mesa broke Wayland's weston on some graphics cards
Summary: Commit of Mesa broke Wayland's weston on some graphics cards
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact:
Depends on:
Reported: 2012-08-11 02:08 UTC by nerdopolis1
Modified: 2012-08-29 07:25 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Note You need to log in before you can comment on or make changes to this bug.
Description nerdopolis1 2012-08-11 02:08:25 UTC
Hi. It seems some EGL related commits causes issues with Wayland's weston clients.
There are many users reporting this issue.

Weston clients fails with:
failed to get cairo egl argb device
failed to create display: No such file or directory
libEGL debug: Display 0x82fce0 is destroyed with resources
And it looks like it could be between
that caused the breakage I think.

Weston clients work again by reverting to commit 102617bc5206e459bb1743d2d72341dbfe77bc58
Comment 1 Darxus 2012-08-11 02:12:50 UTC
The weston code that's failing is:

	d->argb_device = cairo_egl_device_create(d->dpy, d->argb_ctx);
	if (cairo_device_status(d->argb_device) != CAIRO_STATUS_SUCCESS) {
		fprintf(stderr, "failed to get cairo egl argb device\n");
		return -1;

- http://cgit.freedesktop.org/wayland/weston/tree/clients/window.c

So a workaround is to rebuild cairo without --enable-gl.
Comment 2 charliemacdev 2012-08-11 16:31:12 UTC
This actually appears to be a bug in Cairo. As of Mesa commit b50703aea55450e04bcd8154335774786e0f253b there is no longer a "KHR_surfaceless_opengl" extension which Cairo looks for in cairo-egl-context.c. Will try to file upstream.
Comment 3 Darxus 2012-08-12 19:51:41 UTC
Thanks.  Did a cairo bug get opened?  I don't see it.
Comment 4 Matt Turner 2012-08-12 20:06:56 UTC
(In reply to comment #3)
> Thanks.  Did a cairo bug get opened?  I don't see it.

No, it was fixed.

Comment 5 Chris Wilson 2012-08-29 07:25:33 UTC
Cairo was fixed to check both extension names before falling back to an EGL pbuffer.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.