Re: [RFT] kvm with Windows optimization

Gildas
2007-10-26T09:47:14Z

[-- Attachment #1: Type: text/plain, Size: 3289 bytes --]

2007/10/25, Avi Kivity <avi-atKUWr5tajBWk0Htik3J/w@public.gmane.org>:
> This is a request for testing of an experimental kvm feature that
> dramatically accelerates some Windows releases (when running with the
> ACPI HAL, and especially with guest SMP). The feature detects accesses
> by the guest to the Task Priority Register (TPR) and patches them at
> runtime to a kvm-friendly code snipped that is provided by the BIOS.
>
> The upshot of all that is that
> http://kvm.qumranet.com/kvmwiki/Windows_ACPI_Workaround is no longer
> required, and Windows SMP no longer runs like a dog; it's quite snappy
> from my very limited testing.
>
> Please download the test release from
> http://people.qumranet.com/avi/tpr-opt-1.tar.gz and give it a spin.
> Once it has received some exposure, I'll merge it into mainline.
>
> Credit for the original idea is due to Ben Serebrin.
>
> --
> error compiling committee.c: too many arguments to function

Hi Avi,

On an intel machine running 64 bits ubuntu with kernel 2.6.20, using
the archive downloaded this morning at 10 o'clock GMT with the
following md5sum:

6a793d217a067ede35b41684395446e9 ../sources/tpr-opt-1.tar.gz

I tried to install windows xp sp2 with the following command line:
qemu-system-x86_64 -smp 2 -m 1024 -hda /dev/vg1/winxp -cdrom
/home/gl03/iso/xpsp2_install_cd.iso

First part of the install goes fine but after the reboot it BSOD with
DRIVER_IRQL_NOT_LESS_OR_EQUAL (see snapshot included).

Latest lines of dmesg:

[83827.197075] Fault when IDT_Vectoring
[83827.209680] Fault when IDT_Vectoring
[83827.209733] Fault when IDT_Vectoring
[83827.769998] Fault when IDT_Vectoring
[83827.770056] Fault when IDT_Vectoring
[83828.703089] Fault when IDT_Vectoring
[83828.705896] Fault when IDT_Vectoring
[83828.710527] Fault when IDT_Vectoring
[83828.718736] Fault when IDT_Vectoring
[83828.747251] Fault when IDT_Vectoring
[83828.774862] Fault when IDT_Vectoring
[83830.262231] Fault when IDT_Vectoring
[83838.101244] Fault when IDT_Vectoring
[83841.053300] Fault when IDT_Vectoring
[83841.053359] Fault when IDT_Vectoring
[83858.432652] Fault when IDT_Vectoring
[83858.432693] Fault when IDT_Vectoring

Latest lines in the console:

check insn
rip: 807033de
insn: c7 05
instruction ok at 807033e4 tpr fffe0080
check bios
bios ok at 800e0000
vapic_phys e2000
patching insn at 807033de
insn: c7 05
patched code: 807033de 68 41 00 00 00 e8 fc dc 9d ff
check insn
rip: 80703b39
insn: 8b 0d
instruction ok at 80703b3f tpr fffe0080
check bios
bios ok at 800e0000
vapic_phys e2000
patching insn at 80703b39
insn: 8b 0d
patched code: 80703b39 90 e8 71 d5 9d ff a3 80 00 fe
check insn
rip: 80703b3f
insn: a3 80
instruction ok at 80703b44 tpr fffe0080
check bios
bios ok at 800e0000
vapic_phys e2000
patching insn at 80703b3f
insn: a3 80
patched code: 80703b3f e8 99 d5 9d ff 9d 83 c4 08 c1
check insn
rip: 807039cc
insn: 89 0d
instruction ok at 807039d2 tpr fffe0080
check bios
bios ok at 800e0000
vapic_phys e2000
patching insn at 807039cc
insn: 89 0d
patched code: 807039cc 51 e8 12 d7 9d ff a1 80 00 fe
check insn
rip: 807039d2
insn: a1 80
instruction ok at 807039d7 tpr fffe0080
check bios
bios ok at 800e0000
vapic_phys e2000
patching insn at 807039d2
insn: a1 80
patched code: 807039d2 e8 a9 d6 9d ff 33 c0 f3 90 c3

Regards,
Gildas

[-- Attachment #2: winxp_ptr_opt_BSOD.png --]
[-- Type: image/png, Size: 11971 bytes --]

[-- Attachment #3: Type: text/plain, Size: 314 bytes --]

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/

[-- Attachment #4: Type: text/plain, Size: 186 bytes --]

_______________________________________________
kvm-devel mailing list
kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org