Escalated to Bugzilla from IssueTracker
Event posted on 10-30-2009 08:46am EDT by Glen Johnson =Comment: #0================================================= YOGANANTH SUBRAMANIAN <anantyog.com> - ---Problem Description--- Rhev-Block driver causes "unhandled vm exit" with 32bit win2k3r2sp2 Guest VM on restart Contact Information = anantyog.com ---uname output--- Linux bc1cn6 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux Machine Type = Hs-22 ---Debugger--- A debugger is not configured ---Steps to Reproduce--- 1)Install the Rhev-block driver from the rhel 5.4 supplement cd on the win2k3 with r2sp2 32-bit Guest VM 2) boot the machine with drive if=virtio. 3)restart machine ---KVM Component Data--- Userspace tool common name: qemu/kvm The userspace tool has the following bit modes: 64-bit Userspace rpm: kvm-83-105.el5_4.7 Userspace tool obtained from project website: na *Additional Instructions for anantyog.com: -Attach ltrace and strace of userspace application. unhandled vm exit: 0x80000021 vcpu_id 3 rax 0000000000000000 rbx 0000000000000000 rcx 0000000000000000 rdx 0000000000000000 rsi 0000000000000000 rdi 0000000000000000 rsp 0000000000000000 rbp 0000000000000000 r8 0000000000000000 r9 0000000000000000 r10 0000000000000000 r11 0000000000000000 r12 0000000000000000 r13 0000000000000000 r14 0000000000000000 r15 0000000000000000 rip 0000000000000000 rflags 00004002 cs 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) ds 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) es 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) ss 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) fs 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) gs 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) tr 0058 (fffffffff7742350/00000068 p 1 dpl 0 db 0 s 0 type b l 0 g 0 avl 0) ldt 0000 (00000000/00000000 p 0 dpl 0 db 0 s 0 type 0 l 0 g 0 avl 0) gdt f7745400/3ff idt f7745800/7ff cr0 8001003b cr2 c5800000 cr3 72d000 cr4 6b8 cr8 0 efer 800 Aborted #dmesg kvm_handle_exit: unexpected, valid vectoring info (0x80000202) and exit reason is 0x80000021 kvm_handle_exit: unexpected, valid vectoring info (0x80000202) and exit reason is 0x80000021 [Qemu cmd line]: /usr/libexec/qemu-kvm -name 'vm1' -drive file=/scratch/images/yogi/images/win2003r2sp2-32.vm1.raw,if=virtio,boot=on -net nic,vlan=0,macaddr=20:20:20:00:00:01,model=virtio -net tap,vlan=0,script=/home/yogi/qemu-ifup -m 6144 -smp 4 -usbdevice tablet -vnc :0 -cdrom /usr/share/virtio-win/virtio-win-1.0.0.iso The Rhev-Block driver for 32bit win2k3 frm the link below does not cause this error http://www.linux-kvm.com/sites/default/files/virtio-setup-200908.iso The error occurs only with the virtio driver present in the rhel 5.4 supplement cd Thx yogi =Comment: #3================================================= B. N. POORNIMA <bnpoorni.com> - I was able to reproduce the problem. Some more information gathered from Yogi: * Problem happens even when 'if=ide' is used * This is not seen in 64-bit guests This event sent from IssueTracker by jkachuck [IBM-LTC] issue 360244
Hmm, the rip is 0 it means that this vcpu died on init. What's the host cpu? How often does it happen? Just to be sure, this is after a successful installation?
Dor, Windows is trying to reboot via triple fault and KVM is mishandling it.
Fixes for this problem have been posted to kvm-devel.
Event posted on 11-30-2009 03:41pm EST by Glen Johnson ------- Comment From ryanh.com 2009-11-30 15:40 EDT------- Proper fixes for this issue have been committed to kvm.git. Is RH going to create an updated KVM package with this so we can test them out... commit 5e8cb552cb8b48244b6d07bff984b3c4080d4bc9 Author: Marcelo Tosatti <mtosatti> Date: Wed Nov 11 17:29:49 2009 -0200 KVM: x86: raise TSS exception for NULL CS and SS segments Windows 2003 uses task switch to triple fault and reboot (the other exception being reserved pdptrs bits). Signed-off-by: Marcelo Tosatti <mtosatti> commit 69ed80357f952ba4da65ff230a38151def2dbb8c Author: Eddie Dong <eddie.dong> Date: Thu Nov 19 17:54:07 2009 +0200 KVM: x86: make double/triple fault promotion generic to all exceptions Move Double-Fault generation logic out of page fault exception generating function to cover more generic case. Signed-off-by: Eddie Dong <eddie.dong> Signed-off-by: Gleb Natapov <gleb> Signed-off-by: Marcelo Tosatti <mtosatti> This event sent from IssueTracker by jkachuck issue 360244
The bug is now in 'post' state and the changes are being reviewed and will be committed shortly.
Hi,Marcelo I can not reproduce this bug with the following steps: 1.Install a win2k3-r2-sp2-32bit guest with ide block first. /usr/libexec/qemu-kvm -name win2k3-32 -drive file=/root/win2k3-32.qcow2,if=ide -drive file=/media/win2003/x86/en_win_srv_2003_r2_enterprise_with_sp2_cd1_X13-05460.iso,media=cdrom -net nic,vlan=0,macaddr=20:20:20:00:00:01,model=rtl8139 -net tap,vlan=0,script=/etc/qemu-ifup -m 4G -smp 4 -boot d -usbdevice tablet -vnc :10 -monitor stdio 2.After installed sucessfully, shutdown guest then boot it with the rhel 5.4 supplement CD attached. /usr/libexec/qemu-kvm -name win2k3-32 -drive file=/root/win2k3-32.qcow2,if=ide -net nic,vlan=0,macaddr=20:20:20:00:00:01,model=rtl8139 -net tap,vlan=0,script=/etc/qemu-ifup -m 4G -smp 4 -boot c -usbdevice tablet -vnc :10 -cdrom /usr/share/virtio-win/virtio-win-1.0.0.iso -monitor stdio 3.Install the Rhev-block driver from the rhel 5.4 supplement cd on the win2k3 with r2sp2 32-bit 4.Shutdown the guest then boot it with virtio block and virtio NIC card. /usr/libexec/qemu-kvm -name win2k3-32 -drive file=/root/win2k3-32.qcow2,if=virtio,boot=on -net nic,vlan=0,macaddr=20:20:20:00:00:01,model=virtio -net tap,vlan=0,script=/etc/qemu-ifup -m 4G -smp 4 -boot c -usbdevice tablet -vnc :10 -cdrom /usr/share/virtio-win/virtio-win-1.0.0.iso -monitor stdio But, guest meets a BSOD and can not boot with virtio block. I tried the following steps: 1.Boot guest with ide block and virtio NIC card. Guest can boot successfully and can get IP address.And also I can restart guest successfully. 2.Boot guest with ide system block and another virtio non-system hard disk,guest can boot and restart successfully. The virtio non-system hard disk can be found in Computer management. So,Marcelo If I need update some configure file inside guest after I installed virtio block driver so that I can boot the guest with virtio block successfully? Or what should I do to reproduce this bug? Thanks Qunfang
The kvm version I used to reproduce this bug is kvm-83-135.el5.
Qunfang, I used the driver package from https://brewweb.devel.redhat.com/buildinfo?buildID=91481 to reproduce the problem.
Verified this bug in kvm-140,this bug does not exist. And also re-test this bug in other kvm version,results as follow: can reproduce in: kvm-105_4.7; kvm-116 can not reproduce in: kvm-140; kvm-135; kvm-131; kvm-105_4.13 Steps: 0.Install virtio-win package in the host according to Comment#17 1.Install a win2k3-r2-sp2 32bit guest with ide block. /usr/libexec/qemu-kvm -drive file=/root/win2k3-32.raw,media=disk,if=ide -net nic,vlan=0,macaddr=20:20:20:00:00:01,model=rtl8139 -net tap,vlan=0,script=/etc/qemu-ifup -m 6144 -smp 4 -boot c -usbdevice tablet -vnc :10 -monitor stdio -uuid 95d78d8b-fa35-49a3-a7b7-2eecef93213e 2.After installation,boot the guest with ide block and attach another virtio block(so virtio driver can be distinguished after installed.) /usr/libexec/qemu-kvm -drive file=/root/win2k3-32.raw,media=disk,if=ide -drive file=/root/disk.qcow2,media=disk,if=virtio -net nic,vlan=0,macaddr=20:20:20:00:00:01,model=virtio -net tap,vlan=0,script=/etc/qemu-ifup -m 6144 -smp 4 -boot c -usbdevice tablet -vnc :10 -monitor stdio -uuid 95d78d8b-fa35-49a3-a7b7-2eecef93213e -cdrom /usr/share/virtio-win/virtio-win-1.0.0.iso 3.Install virtio block driver from cdrom 4.Restart guest
Event posted on 01-07-2010 05:43am EST by Glen Johnson ------- Comment From bnpoorni.com 2010-01-07 05:34 EDT------- RedHat, Which version of RHEL will include the kvm version mentioned above that fixes this bugzilla? This event sent from IssueTracker by jkachuck issue 360244
(In reply to comment #20) > RedHat, > Which version of RHEL will include the kvm version mentioned above that > fixes this bugzilla? It always says in the 'fixed in version' field above: kvm-83-137.el5. This is in rhel5.5, for 5.4.Z, you can always check the depended BZ above and its version is kvm-83-105.el5_4.17
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2010-0271.html