Bug 1039530

Summary: add support for microsoft os descriptors
Product: Red Hat Enterprise Linux 7 Reporter: Gerd Hoffmann <kraxel>
Component: qemu-kvmAssignee: Gerd Hoffmann <kraxel>
Status: CLOSED CURRENTRELEASE QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.0CC: acathrow, huding, juzhang, mrezanin, sluo, virt-maint
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qemu-kvm-1.5.3-47.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-13 10:18:26 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:

Description Gerd Hoffmann 2013-12-09 11:05:32 UTC
Description of problem:
usb tablet causes high cpu load on windows guests.  this happens because
windows doesn't enable remote wakeup by default.  but windows looks for special
windows-specific usb descriptors, which can be used to set registry entries,
which in turn can be used to enable remote wakeup by default ...

Comment 4 Gerd Hoffmann 2014-02-03 16:31:26 UTC
backport posted.

Comment 5 Miroslav Rezanina 2014-02-12 11:59:57 UTC
Fix included in qemu-kvm-1.5.3-47.el7

Comment 8 huiqingding 2014-02-21 07:10:59 UTC
Reproduce this bug using the following version:
qemu-kvm-1.5.3-46.el7.x86_64
kernel-3.10.0-87.el7.x86_64

Steps to Reproduce:
1. boot a win2012-64 guest with usb-tablet
# /usr/libexec/qemu-kvm -m 4G -smp 2,sockets=1,cores=2,threads=1 -M pc -enable-kvm  -name test -rtc base=localtime,clock=host,driftfix=slew -drive file=/home/win2012-64-virtio.qcow2,if=none,format=qcow2,werror=stop,rerror=stop,media=disk,id=drive-scsi0-disk0 -device virtio-scsi-pci,id=scsi0 -device scsi-hd,scsi-id=0,lun=0,bus=scsi0.0,drive=drive-scsi0-disk0,id=virtio-disk0 -nodefaults -nodefconfig -monitor stdio   -netdev tap,id=netdev,script=/etc/qemu-ifup -device virtio-net-pci,netdev=netdev,mac=54:52:1a:46:0b:01,id=vnic1 -vnc :10 -vga std -device usb-ehci,id=ehci -device usb-tablet,bus=ehci.0 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0
2. clear registry entries described as comment 7
3. reboot windows guest
4. check host cpu load of the qemu process when the guest is idle
# top

Actual results:
after step4, the host cpu load of the qemu process is about 11%~12%

Verify this bug using the following version:
qemu-kvm-1.5.3-48.el7.x86_64
kernel-3.10.0-87.el7.x86_64

Steps to Verification:
1. boot a win2012-64 guest with usb-tablet
# /usr/libexec/qemu-kvm -m 4G -smp 2,sockets=1,cores=2,threads=1 -M pc -enable-kvm  -name test -rtc base=localtime,clock=host,driftfix=slew -drive file=/home/win2012-64-virtio.qcow2,if=none,format=qcow2,werror=stop,rerror=stop,media=disk,id=drive-scsi0-disk0 -device virtio-scsi-pci,id=scsi0 -device scsi-hd,scsi-id=0,lun=0,bus=scsi0.0,drive=drive-scsi0-disk0,id=virtio-disk0 -nodefaults -nodefconfig -monitor stdio   -netdev tap,id=netdev,script=/etc/qemu-ifup -device virtio-net-pci,netdev=netdev,mac=54:52:1a:46:0b:01,id=vnic1 -vnc :10 -vga std -device usb-ehci,id=ehci -device usb-tablet,bus=ehci.0 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0
2. clear registry entries described as comment 7
3. reboot windows guest
4. check host cpu load of the qemu process when the guest is idle
# top

Actual results:
after step4, the host cpu load of the qemu process is about 2%~3%

About the above results, we can see the cpu load becomes lower. Based on this, I think this bug has been fixed.

Comment 10 Ludek Smid 2014-06-13 10:18:26 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.