Bug 609460

Summary: Graphical anomalies under KDE in KVM virtual machine
Product: Red Hat Enterprise Linux 6 Reporter: Michal Haško <mhasko>
Component: qtAssignee: Than Ngo <than>
Status: CLOSED WONTFIX QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: low    
Version: 6.0CC: airlied, jreznik, mhlavink, pknirsch, pslavice, syeghiay, than, tpelka
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 614801 (view as bug list) Environment:
Last Closed: 2011-07-15 11:47:15 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:
Bug Depends On:    
Bug Blocks: 599016, 614801    
Attachments:
Description Flags
graphics anomalities
none
screenshot from guest VM
none
screenshot from host machine none

Description Michal Haško 2010-06-30 11:22:19 UTC
Description of problem:
There are at least two graphical anomalies under KDE in vritual machine:
1. Image corruption in khtml-related applications such as konqueror, khelpcenter
2. Some images seems to have shifted hue (e.g. the Air wallpaper don't appear blue, but yellow instead).

SEE ATTACHED SCREENSHOT

Version-Release number of selected component (if applicable):
host:
kernel-firmware-2.6.32-37.el6.noarch
kernel-headers-2.6.32-37.el6.x86_64
kernel-2.6.32-37.el6.x86_64
xorg-x11-server-Xorg-1.7.7-17.el6.x86_64
xorg-x11-drv-intel-2.11.0-6.el6.x86_64
libvirt-0.8.1-12.el6.x86_64
qemu-kvm-0.12.1.2-2.90.el6.x86_64
qemu-kvm-tools-0.12.1.2-2.90.el6.x86_64

guest:
kernel-firmware-2.6.32-30.el6.noarch
kernel-2.6.32-30.el6.i686
xorg-x11-server-Xorg-1.7.7-2.el6.i686
xorg-x11-drv-cirrus-1.3.2-1.1.el6.i686


How reproducible:
tried on lenovo thinkpad t400 and hp elitoBook 8440p

Steps to Reproduce:
1. install virt-manager
2. install latest (i386) rhel as a virtual machine with KDE environment
3. start kde session on the virtual machine
4. start konqueror and verify image corruption
5. start both [eog | okular] /usr/share/wallpapers/Air/contents/images/1024x768.jpg and verify different colors (should be blue)
  
Actual results:
see attached screenshot

Expected results:
no image corruption in konqueror, Air wallpaper should appear blue in okular

Comment 1 Michal Haško 2010-06-30 11:24:12 UTC
Created attachment 427954 [details]
graphics anomalities

Comment 2 RHEL Program Management 2010-06-30 11:43:27 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release.  Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release.  This request is not yet committed for
inclusion.

Comment 3 Dave Airlie 2010-07-05 22:42:53 UTC
if you take a screenshot inside the VM and copy it out and view it somewhere is the corruption still there?

just want to rule out the vnc stuff.

Comment 4 Michal Haško 2010-07-12 13:32:24 UTC
The image corruption is still visible, if the screenshot is copied from the VM, i.e. the background image color is shifted, images are still corrupted.

2 attachments added

Comment 5 Michal Haško 2010-07-12 13:33:41 UTC
Created attachment 431179 [details]
screenshot from guest VM

Comment 6 Michal Haško 2010-07-12 13:34:21 UTC
Created attachment 431180 [details]
screenshot from host machine

Comment 7 Adam Jackson 2010-07-12 17:40:38 UTC
This is not an X bug.  This is two distinct bugs, probably in QtImage or whatever it's called these days.

In the 1024x768 wallpaper image, the top-left pixel is #06b0fe, but okular is rendering it as #feb006.  No idea _why_ it would be doing that, since the channel masks in qemu's cirrus device are not swizzled relative to a normal desktop, but there you go.

In the konqueror screenshot, RHEL6beta_720x60.jpg is clearly stretched by about 4/3 horizontally.  Since the emulated cirrus device is 24bpp, this is almost certainly a case of the jpeg being expanded to a 32bpp buffer in memory and then uploaded without stripping out the padding channel.

Reassigning to qt.

Comment 8 Than Ngo 2010-07-14 14:16:37 UTC
glxgears has the same problem like in konqueror.

Comment 9 Phil Knirsch 2010-07-14 17:02:00 UTC
As we're past Snap8 for packages for RHEL-6 now we require blocker flags for bugs. This bug doesn't qualify as a blocker, so we're moving it to RHEL-6.1 for further review and/or fixing.

Than has found a possibly fix for the color issue from the first screenshot. He wants to double check with Trolltech first though and discuss with them (upstream) whether this is the right fix. We aim to release the final fix for 6.1 then.

As mentioned in the previous comment we believe though that the second problem is actually the same as the glxgears one, at least the visual errors are strikingly similar. We'll clone this bug for that specific issue then and reassign it to Mesa/GL tomorrow.

So we can provide a fixed Qt version, but as it isn't really blocking installations and/or working with installations we're targetting 

Thanks & regards, Phil

Comment 10 Jaroslav Reznik 2010-08-11 12:36:04 UTC
Could you try KVM machine with wmvga video instead of cirrus? It works for me - seems like there's some breakage between Qt and Cirrus driver (or even some broken stuff in KVM Cirrus video implementation?).

Comment 12 RHEL Program Management 2011-07-06 00:11:15 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unfortunately unable to
address this request at this time. 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. If you would like it considered as an
exception in the current release, please ask your support
representative.

Comment 15 Phil Knirsch 2011-07-15 11:47:15 UTC
This request was evaluated by Red Hat Engineering for inclusion in a Red
Hat Enterprise Linux maintenance release.

Red Hat does not currently plan to provide this change in a Red Hat Enterprise
Linux update release for currently deployed products.

In this specific case the issue has been investigated by Red Hat Engineering and upstream Qt development. The cause of the issue is that the default emulated graphics card in qemu-kvm, a Cirrus CLGD 5446 PCI VGA card doesn't support 32bpp buffer which causes those anomalies. This can be worked around by using the QXL graphics driver.

With the goal of minimizing risk of change for deployed systems, and in
response to customer and partner requirements, Red Hat takes a conservative
approach when evaluating enhancements for inclusion in maintenance updates
for currently deployed products. The primary objectives of update releases
are to enable new hardware platform support and to resolve critical
defects.

However, Red Hat will further review this request for potential inclusion
in future major releases of Red Hat Enterprise Linux.

Comment 16 Than Ngo 2011-08-23 11:50:59 UTC
*** Bug 614801 has been marked as a duplicate of this bug. ***