Bug 721118

Summary: Win7 32 & 64 hangs when run "Plug and Play Driver Test" for QXL WHQL testing
Product: Red Hat Enterprise Linux 8 Reporter: Bill Sanford <bsanford>
Component: spice-qxl-xddmAssignee: Alon Levy <alevy>
Status: CLOSED CURRENTRELEASE QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: ---CC: acathrow, bcao, cmeadors, cpelland, dblechte, juzhang, michen, mkenneth, mkrcmari, syeghiay, tburke, virt-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-0.12.1.2-2.183.el6 qxl-win-0.1-12 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-21 15:02:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 613169    

Description Bill Sanford 2011-07-13 19:10:04 UTC
Description of problem:
Win7 32 & 64 hangs when run "Plug and Play Driver Test" for QXL WHQL testing. 

Version-Release number of selected component (if applicable):
kernel-2.6.32-131.4.1.el6.x86_64
qemu-kvm-0.12.1.2-2.168.el6.x86_64
QXL driver qxl-win0.1-7
RHEL 6.1 with hybrid repo (Host for guests)
spice-client-0.8.0-2.el6.x86_64
spice-server-0.8.0-1.el6.x86_64
spice-server-debuginfo-0.8.0-1.el6.x86_64
spice-vdagent-0.6.3-8.el6.x86_64
spice-client-debuginfo-0.8.0-2.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Run WHQL unclassified driver tests against SPICE client.
2. 
3. 

Actual results:
Guest hangs during power test

Expected results:
Guest doesn't hang during power test

Additional info:

After test suite is done, I will reset the WHQLDTM and SPICE client and rerun test to get screen capture of point of failure.

Comment 2 RHEL Program Management 2011-07-13 19:38:51 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 3 Bill Sanford 2011-07-14 12:59:49 UTC
In chat on #spice 

ykaul> cmeadors, bsanford: https://bugzilla.redhat.com/show_bug.cgi?id=721118 is the same issue we've had in the previous version. Easy to test on Windows - the device is hot-pluggable by Windows, right? No sane display adapter should be hot-pluggable, as cool as it sounds. Therefore, a QEMU bug (the QXL device need to present itself as non-pluggable.)

Comment 4 Andrew Cathrow 2011-07-14 13:02:28 UTC
did we have an exception for this in rhel5?

Comment 5 Dor Laor 2011-07-14 13:37:42 UTC
We added support to mark devices like this as non-hot-pluggable.
Gerd, can you supply the cmdline for it? It might should even be automatic.

Comment 6 Gerd Hoffmann 2011-07-14 14:42:46 UTC
qxl (primary) is already tagged as non hotpluggable, and neither win7 not winxp show it in the menu of hot-pluggable devices.  Needs RHEL-6.1, 6.0 hasn't these bits yet.

secondary qxl devices (multihead case) still can be hotplugged, and at least plug-in actually worked last time I tried, with the minor glitch that you have to restart the spice client because it doesn't notice the new display channel appearing.  plug-out was refused by the windows driver.

Comment 7 Gerd Hoffmann 2011-07-15 08:29:16 UTC
Initial report says qemu-kvm-0.12.1.2-2.168.el6.x86_64 which is new enougth so qxl should be non-hotpluggable already (in a single-head configuration), so this is probably something else.  windoes guest driver bug?

Comment 8 Gerd Hoffmann 2011-07-20 13:35:22 UTC
Does WHQL testing run in single-head configuration?

Comment 9 Cameron Meadors 2011-09-22 12:21:53 UTC
Yes, we have been running our WHQL runs in single-head.

Comment 10 Mike Cao 2011-09-26 16:16:43 UTC
Hi, Bill

Could you supply the CommandLine you used in WHQL test ?
 I want to make sure we virt QE can reproduce it .

TIA,
Mike

Comment 11 Bill Sanford 2011-09-27 13:51:28 UTC
Mike, I looked over my notes and the only command line I have is:

/usr/libexec/qemu-kvm -S -M rhel6.1.0 -cpu Nehalem,+rdtscp,+xtpr,+tm2,+est,+vmx,+ds_cpl,+monitor,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme-enable-kvm -m 4096 -smp 1,sockets=1,cores=1,threads=1 -name Win7x64-qxlw7 -uuid d03c4eb4-19bc-e4dc-dcb8-9faaba1abc46 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/Win7x64-qxlw7.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -boot c -drive file=/home/test/images/Win7x86_64-clone.img,if=none,id=drive-ide0-0-0,format=raw,cache=none,aio=threads -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -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,fd=20,id=hostnet0 -device  rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:d0:4d:60,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -usb -spice port=5900,addr=127.0.0.1,disable-ticketing -vga qxl -global qxl-vga.vram_size=9437184 -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=0x5.

Comment 12 Alon Levy 2011-10-04 15:07:30 UTC
Hi Bill,

 "Plug and Play Driver Test" is number 272 on my DTM, and it passes on both Win7 32 and Win7 64 from my own tests. That test's subtest is number 265. And it's Regular jobs are "Run Remove PNPDTest, Run Surprise PNPD Test, Run Rebalance PNPD Test". Nothing with the word Power, so I'm not sure if it isn't another test you are referring to. 

 Perhaps the power test is what is called in the DTM 1.6.8367.000 by "Sleep Stress With IO"? number 672, passes as well with the untagged drivers.

Same questions as for bug 720485 (see it for my DTM version):
 What DTM version are you using?
 Does it reproduce with the newest qemu-kvm and this qxl-win scratch build
 http://brewweb.devel.redhat.com/brew/taskinfo?taskID=3682780

Alon

Comment 13 Alon Levy 2011-10-05 19:16:07 UTC
Fixed in qxl-win-0.1-12, see https://bugzilla.redhat.com/show_bug.cgi?id=688883 for comments about skipped versions.

Comment 14 Alon Levy 2011-10-05 19:20:45 UTC
Forgot to put the qemu-kvm minimal version required.

I put 183 because of a fix it has for abort on stop. Otherwise 179 is fine.

Must have qxl-win-0.1-12 anyway.

Lengthier explanation: I haven't verified this, I expect 179 to also work, but 183 contains a fix for an abort on stop, and perhaps this tests includes hibernation, which does a stop - not sure how that test is run, but I run it via -no-shutdown and a rebooting script using qmp, so it would crash. If you kill the qemu process and restart another, 179 should work.

Comment 15 Alon Levy 2011-10-06 12:46:09 UTC
I want to clarify the issue this bug is about and tie up the previous comments, starting with comment 3 with ykaul's quote.

1. The display device isn't hotpluggable in practice. (XDDM has no support for the concept)
2. The WHQL test we run does a surprise removal of the device anyway, since it is the Unclassified test.

Qemu isn't to blame here. The test ignores the hotpluggable status of the device. There is a workaround for surprise remove in qxl-win-0.1-12, see commit messages:

 http://cgit.freedesktop.org/spice/win32/qxl/commit/?id=96b19230c6780a7c877ec53bde525b5f032de0cd

 http://cgit.freedesktop.org/spice/win32/qxl/commit/?id=ff93ec988c6dffe0287c12b736326d160308fd3e

Moving the bug to spice-qxl-driver-win component.

Alon

Comment 17 Bill Sanford 2011-12-21 15:02:11 UTC
WHQL testing is done.