Bug 677470
| Summary: | OpenGL does not render correctly in a RHEL6 guest | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Bob Kozdemba <bkozdemb> | ||||||||||
| Component: | mesa | Assignee: | Adam Jackson <ajax> | ||||||||||
| Status: | CLOSED ERRATA | QA Contact: | Desktop QE <desktop-qa-list> | ||||||||||
| Severity: | high | Docs Contact: | |||||||||||
| Priority: | unspecified | ||||||||||||
| Version: | 6.0 | CC: | berrange, dallan, kraxel, mkenneth, syeghiay, tburke, tpelka, virt-maint | ||||||||||
| Target Milestone: | rc | ||||||||||||
| Target Release: | --- | ||||||||||||
| Hardware: | All | ||||||||||||
| OS: | Linux | ||||||||||||
| Whiteboard: | |||||||||||||
| Fixed In Version: | mesa-7.11-1.el6 | Doc Type: | Bug Fix | ||||||||||
| Doc Text: | Story Points: | --- | |||||||||||
| Clone Of: | Environment: | ||||||||||||
| Last Closed: | 2011-12-06 14:49:58 UTC | Type: | --- | ||||||||||
| Regression: | --- | Mount Type: | --- | ||||||||||
| Documentation: | --- | CRM: | |||||||||||
| Verified Versions: | Category: | --- | |||||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||||
| Embargoed: | |||||||||||||
| Attachments: |
|
||||||||||||
Created attachment 478724 [details]
Example of bad output
Created attachment 478725 [details]
Example of good output
Created attachment 478726 [details]
source for gltest.c
Since RHEL 6.1 External Beta has begun, and this bug remains unresolved, it has been rejected as it is not proposed as exception or blocker. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux. I can reproduce this problem, even with a Fedora guest. It occurs even with a regular VNC client, and also when using SPICE for graphics. Thus I believe this is not a virt-viewer bug, but in fact a QEMU graphics/video bug. Which fedora release? I see it working fine with a F15 guest. Note that the virtual gfx cards have no 3D support so this has to be rendered by the guest in software, so this could be a software rendering bug and thus depend on the mesa version installed inside the guest. I'm tested a F14 i686 guest mesa-dri-drivers-7.9-1.fc14.i686 mesa-libGL-7.9-1.fc14.i686 mesa-libGLU-7.9-0.6.fc14.i686 mesa-libGL-devel-7.9-1.fc14.i686 And a F16 rawhide guest mesa-libGLU-7.11-0.14.20110620.0.fc16.x86_64 mesa-dri-drivers-7.11-0.14.20110620.0.fc16.x86_64 mesa-libGL-7.11-0.15.20110620.0.fc16.x86_64 mesa-libGL-devel-7.11-0.15.20110620.0.fc16.x86_64 mesa-dri-filesystem-7.11-0.14.20110620.0.fc16.x86_64 In both cases the gltest program attached to this bug doesn't render correctly. I also just noticed that the standard glxgears has fubar rendering too. NB, my host is actually a F15 x86_64 machine, not RHEL6, so I'm not testing exactly the same combo as the original reporter, but the results I get a similar to this screenshots More testing shows: -vga std renders ok -vga qxl renders ok -vga cirrus (which happens to be the default) is broken So it is probably one of the cirrus ops which isn't emulated correctly (or a bug in the xorg cirrus driver). The initial report mentions rendering bugs with std vga, can't reproduce those. I can confirm that my tests showing problems from comment #8 were both done with Cirrus. Switching to the 'std' driver fixes the rendering, so my results concur with yours, looks like a Cirrus emulation/driver bug. Compiled qemu with cirrus debug enabled. Nothing gets printed while running glxgears. Looks like no cirrus ops are involved when blitting the gears to the screen. Hmm. Ah, seems to depend on the color depth. The xorg vesa driver runs with 16 bpp. Forcing the xorg cirrus driver into 16 bpp fixes the rendering too. So I guess software rendering is broken @ 24 bpp. Assigning to xorg cirrus driver for further investigation. This should be fixed in mesa-7.11-1.el6. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2011-1616.html |
Created attachment 478723 [details] test program (64-bit) Description of problem: Inside of virt-viewer, OpenGL output is corrupted as if the pixel format is incorrect. Happens on both 32 and 64-bit guests. If the video driver is changed to vga or vmvga, the problem improves but still exhibits corrupt rendering. Version-Release number of selected component (if applicable): RHEL6 How reproducible: 100% Steps to Reproduce: 1. Open the virt-viewer on a running virtual machine 2. If not started, start the X Window system 3. Run the attached test program (./gltest) Actual results: See attached file: gltest-bad.png Expected results: See attached file: gltest-good.png Additional info: 64-bit executable is attached along with test source program.