Hide Forgot
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 ...
http://msdn.microsoft.com/en-us/library/windows/hardware/ff537430.aspx http://patchwork.ozlabs.org/patch/298993/ http://patchwork.ozlabs.org/patch/298992/
backport posted.
Fix included in qemu-kvm-1.5.3-47.el7
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.
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.