Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1568644
Summary: | Xvfb returning NULL GLX server string | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Elliott Sales de Andrade <quantum.analyst> |
Component: | xorg-x11-server | Assignee: | X/OpenGL Maintenance List <xgl-maint> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | alexl, awilliam, bskeggs, caillon+fedoraproject, jglisse, john.j5live, ofourdan, philip.chimento, ppisar, rdieter, rhughes, rstrode, sandmann, xgl-maint |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | xorg-x11-server-1.19.6-8.fc28 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2018-04-27 04:11:16 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Elliott Sales de Andrade
2018-04-18 00:42:16 UTC
Bisect turned out to be relatively easy; seems to point to this commit: d8ec33fe0542141aed1d9016d2ecaf52da944b4b is the first bad commit commit d8ec33fe0542141aed1d9016d2ecaf52da944b4b Author: Adam Jackson <ajax> Date: Wed Jan 10 13:05:45 2018 -0500 glx: Use vnd layer for dispatch (v4) The big change here is MakeCurrent and context tag tracking. We now delegate context tags entirely to the vnd layer, and simply store a pointer to the context state as the tag data. If a context is deleted while it's current, we allocate a fake ID for the context and move the context state there, so the tag data still points to a real context. As a result we can stop trying so hard to detach the client from contexts at disconnect time and just let resource destruction handle it. Since vnd handles all the MakeCurrent protocol now, our request handlers for it can just be return BadImplementation. We also remove a bunch of LEGAL_NEW_RESOURCE, because now by the time we're called vnd has already allocated its tracking resource on that XID. v2: Update to match v2 of the vnd import, and remove more redundant work like request length checks. v3: Add/remove the XID map from the vendor private thunk, not the backend. (Kyle Brenneman) v4: Fix deletion of ghost contexts (Kyle Brenneman) Signed-off-by: Adam Jackson <ajax> :100644 100644 9e498e662d0ca763656684be5b1427ff61b6f9d0 c1f389c1e5e02a665aa1a1bb4c8dbca6032f5722 M configure.ac :040000 040000 b194a8fa688d757fe5fce74b841ab2a79d56e466 64b608f3696cb8b29cba926e0a1a20882446b7d1 M glx :040000 040000 86e24d3c34398d1ee475a38af31ac9feb8b12e4b f0fd28b887ee8a9b00ccaa7528cf1981a4988bc2 M hw :040000 040000 d79a9ec87c3c8b591d4adcb8fe7b7c7a0bb2a34f c3f3ccfc7ff44994f5824120482a7f01b6c8d56f M include Also, since I didn't post it before, when run with 8753218beae641e5c5ac2c2ba598cfb99a893cf4 (the parent commit), the output is: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' libEGL warning: DRI2: failed to open swrast (search paths /usr/lib64/dri) libEGL warning: DRI2: failed to open swrast (search paths /usr/lib64/dri) libEGL warning: DRI2: failed to open swrast (search paths /usr/lib64/dri) libEGL warning: DRI2: failed to open swrast (search paths /usr/lib64/dri) QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled and then it just runs invisibly. This is affecting GNOME's CI builds (https://gitlab.gnome.org/GNOME/gjs/issues/141) and can be reproduced with simply "xvfb-run glxinfo". It also breaks building Perl packages that execute X11 applications during tests. I'm reasonably sure this is fixed by the following update to libglvnd: * Wed Apr 18 2018 Adam Jackson <ajax> - 1.0.1-0.5.20180327git5baa1e5 - Go back to Requires: mesa-*, the fallout is too great (#1568881 etc) ... or it would be, in 1.20. In 1.19 Xvfb's default depth is 8bpp, and GLX doesn't work at that depth. Probably you want not to be running your tests against 8bpp though. xorg-x11-server-1.19.6-8.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-3c8f65c520 xorg-x11-server-1.19.6-8.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-3c8f65c520 I don't care about color depth. I tried "Xvfb -ac -screen 0 640x480x24 :0", and Gtk client still segfaults. It happens exactly since the libglvnd-1.0.1-0.5.20180327git5baa1e5 because it run-requires mesa-libGL. I can get the segfault even with older libglvnd or Xvfb if I install mesa-libGL. It looks like GDK detects libGL uses it and then it segfaults. Of course glxinfo segfaults too. Petr: can you check whether it works if you install mesa-dri-drivers ? If I install mesa-dri-drivers and restart Xvfb, then the Gtk client works. Regardless of overriding the color depth. Also If I upgrade xorg-x11-server-Xvfb to 1.19.99.905-1.fc29, the client works even without mesa-dri-drivers being installed. Thank you for fixing it. xorg-x11-server-1.19.6-8.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report. |