Bug 893344

Summary: "info qtree" output for qxl-vga does not match between rhel6.0 host and rhel6.4 host with -M rhel6.0.0
Product: Red Hat Enterprise Linux 6 Reporter: Qunfang Zhang <qzhang>
Component: qemu-kvmAssignee: Gerd Hoffmann <kraxel>
Status: CLOSED WORKSFORME QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.4CC: acathrow, alevy, amit.shah, armbru, bsarathy, ehabkost, juzhang, kraxel, lnovich, michen, mkenneth, virt-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-0.12.1.2-2.362.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-25 09:29:57 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:
Attachments:
Description Flags
Guest screenshot for the failure
none
isa serial log for the guest none

Description Qunfang Zhang 2013-01-09 07:31:36 UTC
Description of problem:

Boot guest with spice+qxl on rhel6.0 host and check the "info qtree" output, it's different with the output on rhel6.4 host with -M rhel6.0.0. Especially for the 'revision' property.

On rhel6.0 host:
/usr/libexec/qemu-kvm -M rhel6.0.0 -spice port=5930,disable-ticketing -vga qxl  (can not boot with vnc+qxl, segment fault.)

      dev: qxl, id "" 
        dev-prop: ram_size = 67108864 
        bus-prop: addr = 02.0 
        bus-prop: romfile = "vgabios-qxl.bin" 
        bus-prop: rombar = 1 
        class VGA controller, addr 20:02.0, pci id 1b36:0100 (sub 1af4:1100) 
        bar 0: mem at 0xf0000000 [0xf3ffffff] 
        bar 1: mem at 0xf4000000 [0xf4000fff] 
        bar 2: mem at 0xf4002000 [0xf4003fff] 
        bar 3: i/o at 0xc010 [0xc017] 
        bar 6: mem at 0xffffffffffffffff [0xfffe] 

On rhel6.4 host with -M rhel6.0.0:
/usr/libexec/qemu-kvm ...... -M rhel6.0.0 -spice port=5930,disable-ticketing -vga qxl  

     dev: qxl-vga, id "" 
        dev-prop: ram_size = 67108864 
        dev-prop: vram_size = 67108864 
        dev-prop: revision = 2 
        dev-prop: debug = 0 
        dev-prop: guestdebug = 0 
        dev-prop: cmdlog = 0 
        bus-prop: addr = 02.0 
        bus-prop: romfile = "vgabios-qxl.bin" 
        bus-prop: rombar = 1 
        bus-prop: multifunction = off 
        class VGA controller, addr 00:02.0, pci id 1b36:0100 (sub 1af4:1100) 
        bar 0: mem at 0xf0000000 [0xf3ffffff] 
        bar 1: mem at 0xffffffffffffffff [0x3fffffe] 
        bar 2: mem at 0xf4000000 [0xf4003fff] 
        bar 3: i/o at 0xc010 [0xc01f] 
        bar 6: mem at 0xffffffffffffffff [0xfffe] 


Version-Release number of selected component (if applicable):
RHEL6.4 host:
kernel-2.6.32-348.el6.x86_64
qemu-kvm-0.12.1.2-2.348.el6.x86_64


How reproducible:
Always

Steps to Reproduce:
1. Boot guest with spice and qxl on rhel6.0 host and check the "(qemu) info qtree" output for qxl part. 

2. Repeat step 1 on rhel6.4 host with -M rhel6.0.0

3. Compare the output for qxl part. 
  
Actual results:
"info qtree" output for qxl-vga does not match, pls check bug description above.

Expected results:
"info qtree" output for qxl-vga should match.

Additional info:

Comment 2 Gerd Hoffmann 2013-04-04 10:18:18 UTC
patch posted.

Comment 8 Qunfang Zhang 2013-06-25 06:28:22 UTC
Verified the issue on qemu-kvm-rhev-0.12.1.2-2.376.el6.x86_64.

Check the qxl-vga info in "info qtree" output, the "vram_size" changes to 4096 and the revision changes to "1".

  dev: qxl-vga, id ""
        dev-prop: ram_size = 67108864
        dev-prop: vram_size = 4096
        dev-prop: revision = 1
        dev-prop: debug = 0
        dev-prop: guestdebug = 0
        dev-prop: cmdlog = 0
        bus-prop: addr = 02.0
        bus-prop: romfile = "vgabios-qxl.bin"
        bus-prop: rombar = 1
        bus-prop: multifunction = off
        class VGA controller, addr 20:02.0, pci id 1b36:0100 (sub 1af4:1100)
        bar 0: mem at 0xf0000000 [0xf3ffffff]
        bar 1: mem at 0xf4000000 [0xf4000fff]
        bar 2: mem at 0xf4002000 [0xf4003fff]
        bar 3: i/o at 0xc010 [0xc017]
        bar 6: mem at 0xffffffffffffffff [0xfffe]

But boot a rhel6.4-64 guest, guest fails to start up the X windows. Can login guest via isa-serial console or ssh, but can not display the desktop correctly. Isa serial log and guest screenshot will be uploaded.

Hi, Gerd
Could you help confirm the following stuff:
(1) For this bug, the change is: the "vram_size" changes to 4096 and the revision changes to "1". Is it correct? And other properties do not change.
(2) Guest failed to boot up X Window after fix, does the patch have something wrong?  Downgrade qemu-kvm to -355, guest X Window can display correctly.

Comment 9 Qunfang Zhang 2013-06-25 06:29:36 UTC
Created attachment 764931 [details]
Guest screenshot for the failure

Comment 10 Qunfang Zhang 2013-06-25 06:30:10 UTC
Created attachment 764932 [details]
isa serial log for the guest

Comment 11 Qunfang Zhang 2013-06-25 06:32:01 UTC
Command line:
/usr/libexec/qemu-kvm -cpu SandyBridge -M rhel6.0.0 -enable-kvm -m 4096 -smp 2,sockets=2,cores=1,threads=1 -name rhel6.4-64 -uuid 9a0e67ec-f286-d8e7-0548-0c1c9ec93009 -nodefconfig -nodefaults -monitor stdio -rtc base=utc,clock=host,driftfix=slew -no-kvm-pit-reinjection -no-shutdown -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x7 -drive file=/home/RHEL-Server-6.4-64-virtio.qcow2,if=none,id=drive-virtio-disk0,format=qcow2,cache=none -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,id=hostnet0,vhost=on -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:d5:51:8a,bus=pci.0,addr=0x3 -chardev socket,id=charserial0,path=/tmp/isa-serial,server,nowait -device isa-serial,chardev=charserial0,id=serial0  -device usb-tablet,id=input0 -spice port=5930,disable-ticketing -vga qxl -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 -qmp tcp:0:5555,server,nowait

Comment 12 Gerd Hoffmann 2013-06-25 10:08:30 UTC
Could be the xorg driver can't handle rev-1 qxl cards.
Alon?

Comment 14 Alon Levy 2013-06-26 11:42:59 UTC
(In reply to Gerd Hoffmann from comment #12)
> Could be the xorg driver can't handle rev-1 qxl cards.
> Alon?

Fedora 18's xorg segfaults when revision is 1. So I'd say no :/

Comment 16 Qunfang Zhang 2013-06-28 03:01:53 UTC
Re-assign the bug first to wait for a solution about this bug.

Comment 17 Gerd Hoffmann 2013-07-25 09:29:57 UTC
Testing failed due to guest bug, closing as fixed.