* [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
@ 2012-03-15 19:14 Michael Roth
2012-03-15 19:54 ` Vadim Rozenfeld
2012-03-15 21:26 ` Paolo Bonzini
0 siblings, 2 replies; 7+ messages in thread
From: Michael Roth @ 2012-03-15 19:14 UTC (permalink / raw)
To: vrozenfe; +Cc: aliguori, qemu-devel
Hi Vadim,
I've been trying to use -cpu qemu64,hv_relaxed as a workaround for a
CLOCK_WATCHDOG_TIMEOUT BSOD on Windows 2008 R2 guests when a vcpu's
execution is delayed for an extended period. When I do this however I get the
following the BSOD:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff559206(v=vs.85).aspx
I've also tried -cpu qemu64,hv_spinlocks=4 and -cpu qemu64,hv_vapic as a
sanity check and this results in the same error being thrown.
Host is RHEL6.1 using latest qemu.git, guests are win2k8 server r2 (same
behavior for both SP0 and SP1). Here's the full command-line:
qemu-upstream -L ../qemu-build/pc-bios -cpu qemu64,hv_relaxed --enable-kvm \
-M pc-1.1 -enable-kvm -m 4096 -smp 4,sockets=4,cores=1,threads=1 \
-name ichigo-dom45 -nodefconfig -nodefaults -rtc base=utc,driftfix=slew \
-drive file=/scratch/mdroth/win2k8r2sp1.raw,if=none,id=drive0,format=raw,cache=writethrough,snapshot=on \
-device virtio-blk-pci,bus=pci.0,drive=drive0,id=disk0,bootindex=1 \
-netdev tap,id=hostnet0,script=/etc/qemu-ifup \
-device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:FF:FE:00:00:2d,bus=pci.0 \
-device virtio-balloon-pci,id=balloon0,bus=pci.0 \
-usb -device usb-tablet,id=input0 -vnc 0.0.0.0:45 -vga cirrus
Unfortunately the BSOD is too early to get a kernel dump, but here are
the error params in case that's useful:
0xFC0000096, 0xF800027F6200, 0x0, 0x0
Let me know if you need any other details.
Thanks!
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
2012-03-15 19:14 [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests Michael Roth
@ 2012-03-15 19:54 ` Vadim Rozenfeld
2012-03-15 20:00 ` Anthony Liguori
2012-03-15 21:26 ` Paolo Bonzini
1 sibling, 1 reply; 7+ messages in thread
From: Vadim Rozenfeld @ 2012-03-15 19:54 UTC (permalink / raw)
To: Michael Roth; +Cc: aliguori, qemu-devel
On Thursday, March 15, 2012 09:14:39 PM Michael Roth wrote:
> Hi Vadim,
>
> I've been trying to use -cpu qemu64,hv_relaxed as a workaround for a
> CLOCK_WATCHDOG_TIMEOUT BSOD on Windows 2008 R2 guests when a vcpu's
> execution is delayed for an extended period. When I do this however I get
> the following the BSOD:
>
> http://msdn.microsoft.com/en-us/library/windows/hardware/ff559206(v=vs.85).
> aspx
>
> I've also tried -cpu qemu64,hv_spinlocks=4 and -cpu qemu64,hv_vapic as a
> sanity check and this results in the same error being thrown.
>
> Host is RHEL6.1 using latest qemu.git, guests are win2k8 server r2 (same
I'm pretty much sure that hyper-v support was not backported into RHEL 6.1
KVM.
Best regards,
Vadim.
> behavior for both SP0 and SP1). Here's the full command-line:
>
> qemu-upstream -L ../qemu-build/pc-bios -cpu qemu64,hv_relaxed --enable-kvm
> \ -M pc-1.1 -enable-kvm -m 4096 -smp 4,sockets=4,cores=1,threads=1 \ -name
> ichigo-dom45 -nodefconfig -nodefaults -rtc base=utc,driftfix=slew \ -drive
> file=/scratch/mdroth/win2k8r2sp1.raw,if=none,id=drive0,format=raw,cache=wr
> itethrough,snapshot=on \ -device
> virtio-blk-pci,bus=pci.0,drive=drive0,id=disk0,bootindex=1 \ -netdev
> tap,id=hostnet0,script=/etc/qemu-ifup \
> -device
> virtio-net-pci,netdev=hostnet0,id=net0,mac=00:FF:FE:00:00:2d,bus=pci.0 \
> -device virtio-balloon-pci,id=balloon0,bus=pci.0 \
> -usb -device usb-tablet,id=input0 -vnc 0.0.0.0:45 -vga cirrus
>
> Unfortunately the BSOD is too early to get a kernel dump, but here are
> the error params in case that's useful:
>
> 0xFC0000096, 0xF800027F6200, 0x0, 0x0
>
> Let me know if you need any other details.
>
> Thanks!
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
2012-03-15 19:54 ` Vadim Rozenfeld
@ 2012-03-15 20:00 ` Anthony Liguori
2012-03-15 20:32 ` Vadim Rozenfeld
0 siblings, 1 reply; 7+ messages in thread
From: Anthony Liguori @ 2012-03-15 20:00 UTC (permalink / raw)
To: Vadim Rozenfeld; +Cc: aliguori, Michael Roth, qemu-devel
On 03/15/2012 02:54 PM, Vadim Rozenfeld wrote:
> On Thursday, March 15, 2012 09:14:39 PM Michael Roth wrote:
>> Hi Vadim,
>>
>> I've been trying to use -cpu qemu64,hv_relaxed as a workaround for a
>> CLOCK_WATCHDOG_TIMEOUT BSOD on Windows 2008 R2 guests when a vcpu's
>> execution is delayed for an extended period. When I do this however I get
>> the following the BSOD:
>>
>> http://msdn.microsoft.com/en-us/library/windows/hardware/ff559206(v=vs.85).
>> aspx
>>
>> I've also tried -cpu qemu64,hv_spinlocks=4 and -cpu qemu64,hv_vapic as a
>> sanity check and this results in the same error being thrown.
>>
>> Host is RHEL6.1 using latest qemu.git, guests are win2k8 server r2 (same
>
> I'm pretty much sure that hyper-v support was not backported into RHEL 6.1
> KVM.
So is there a hyper-v capability for KVM then? Or a CPUID feature?
Should QEMU refuse to enable hv_relaxed if the capability isn't present?
Regards,
Anthony Liguori
> Best regards,
> Vadim.
>
>> behavior for both SP0 and SP1). Here's the full command-line:
>>
>> qemu-upstream -L ../qemu-build/pc-bios -cpu qemu64,hv_relaxed --enable-kvm
>> \ -M pc-1.1 -enable-kvm -m 4096 -smp 4,sockets=4,cores=1,threads=1 \ -name
>> ichigo-dom45 -nodefconfig -nodefaults -rtc base=utc,driftfix=slew \ -drive
>> file=/scratch/mdroth/win2k8r2sp1.raw,if=none,id=drive0,format=raw,cache=wr
>> itethrough,snapshot=on \ -device
>> virtio-blk-pci,bus=pci.0,drive=drive0,id=disk0,bootindex=1 \ -netdev
>> tap,id=hostnet0,script=/etc/qemu-ifup \
>> -device
>> virtio-net-pci,netdev=hostnet0,id=net0,mac=00:FF:FE:00:00:2d,bus=pci.0 \
>> -device virtio-balloon-pci,id=balloon0,bus=pci.0 \
>> -usb -device usb-tablet,id=input0 -vnc 0.0.0.0:45 -vga cirrus
>>
>> Unfortunately the BSOD is too early to get a kernel dump, but here are
>> the error params in case that's useful:
>>
>> 0xFC0000096, 0xF800027F6200, 0x0, 0x0
>>
>> Let me know if you need any other details.
>>
>> Thanks!
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
2012-03-15 20:00 ` Anthony Liguori
@ 2012-03-15 20:32 ` Vadim Rozenfeld
0 siblings, 0 replies; 7+ messages in thread
From: Vadim Rozenfeld @ 2012-03-15 20:32 UTC (permalink / raw)
To: Anthony Liguori; +Cc: aliguori, Michael Roth, qemu-devel
On Thursday, March 15, 2012 10:00:11 PM Anthony Liguori wrote:
> On 03/15/2012 02:54 PM, Vadim Rozenfeld wrote:
> > On Thursday, March 15, 2012 09:14:39 PM Michael Roth wrote:
> >> Hi Vadim,
> >>
> >> I've been trying to use -cpu qemu64,hv_relaxed as a workaround for a
> >> CLOCK_WATCHDOG_TIMEOUT BSOD on Windows 2008 R2 guests when a vcpu's
> >> execution is delayed for an extended period. When I do this however I
> >> get the following the BSOD:
> >>
> >> http://msdn.microsoft.com/en-us/library/windows/hardware/ff559206(v=vs.8
> >> 5). aspx
> >>
> >> I've also tried -cpu qemu64,hv_spinlocks=4 and -cpu qemu64,hv_vapic as a
> >> sanity check and this results in the same error being thrown.
> >>
> >> Host is RHEL6.1 using latest qemu.git, guests are win2k8 server r2 (same
> >
> > I'm pretty much sure that hyper-v support was not backported into RHEL
> > 6.1 KVM.
>
> So is there a hyper-v capability for KVM then? Or a CPUID feature?
KVM_CAP_HYPERV, but we don't use it at the moment.
>
> Should QEMU refuse to enable hv_relaxed if the capability isn't present?
Yes. I will submit a patch.
Best regards,
Vadim.
>
> Regards,
>
> Anthony Liguori
>
> > Best regards,
> > Vadim.
> >
> >> behavior for both SP0 and SP1). Here's the full command-line:
> >>
> >> qemu-upstream -L ../qemu-build/pc-bios -cpu qemu64,hv_relaxed
> >> --enable-kvm \ -M pc-1.1 -enable-kvm -m 4096 -smp
> >> 4,sockets=4,cores=1,threads=1 \ -name ichigo-dom45 -nodefconfig
> >> -nodefaults -rtc base=utc,driftfix=slew \ -drive
> >> file=/scratch/mdroth/win2k8r2sp1.raw,if=none,id=drive0,format=raw,cache
> >> =wr itethrough,snapshot=on \ -device
> >> virtio-blk-pci,bus=pci.0,drive=drive0,id=disk0,bootindex=1 \ -netdev
> >> tap,id=hostnet0,script=/etc/qemu-ifup \
> >>
> >> -device
> >>
> >> virtio-net-pci,netdev=hostnet0,id=net0,mac=00:FF:FE:00:00:2d,bus=pci.0 \
> >> -device virtio-balloon-pci,id=balloon0,bus=pci.0 \
> >>
> >> -usb -device usb-tablet,id=input0 -vnc 0.0.0.0:45 -vga cirrus
> >>
> >> Unfortunately the BSOD is too early to get a kernel dump, but here are
> >> the error params in case that's useful:
> >>
> >> 0xFC0000096, 0xF800027F6200, 0x0, 0x0
> >>
> >> Let me know if you need any other details.
> >>
> >> Thanks!
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
2012-03-15 19:14 [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests Michael Roth
2012-03-15 19:54 ` Vadim Rozenfeld
@ 2012-03-15 21:26 ` Paolo Bonzini
2012-03-15 21:39 ` Michael Roth
2012-03-15 22:10 ` Vadim Rozenfeld
1 sibling, 2 replies; 7+ messages in thread
From: Paolo Bonzini @ 2012-03-15 21:26 UTC (permalink / raw)
To: Michael Roth; +Cc: aliguori, vrozenfe, qemu-devel
Il 15/03/2012 20:14, Michael Roth ha scritto:
>
> Unfortunately the BSOD is too early to get a kernel dump, but here are
> the error params in case that's useful:
>
> 0xFC0000096, 0xF800027F6200, 0x0, 0x0
>
> Let me know if you need any other details.
You can use the Windows Boot Debugger. (Disclaimer: I only used it
once). Enable it with "bcdedit /bootdebug {current} ON".
To use it, you need two Windows VMs (the one that fails and one with
WinDbg installed). It is the same as doing normal kernel debugging
except that the debuggee will hang waiting for a connection even before
showing the boot loader prompt. You need to connect the serial consoles
of the VMs; I usually use socat like
socat "PIPE:$tty1,unlink-close=0,noctty=1" \
"PIPE:$tty2,unlink-close=0,noctty=1
with the tty names taken from libvirt's XML. It probably works with
Unix sockets too but I never tried.
>From WinDbg you should be able to get a backtrace. If you never used
WinDbg, remember to set it up for downloading symbols:
http://support.microsoft.com/kb/311503
HTH,
Paolo
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
2012-03-15 21:26 ` Paolo Bonzini
@ 2012-03-15 21:39 ` Michael Roth
2012-03-15 22:10 ` Vadim Rozenfeld
1 sibling, 0 replies; 7+ messages in thread
From: Michael Roth @ 2012-03-15 21:39 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: aliguori, vrozenfe, qemu-devel
On Thu, Mar 15, 2012 at 10:26:00PM +0100, Paolo Bonzini wrote:
> Il 15/03/2012 20:14, Michael Roth ha scritto:
> >
> > Unfortunately the BSOD is too early to get a kernel dump, but here are
> > the error params in case that's useful:
> >
> > 0xFC0000096, 0xF800027F6200, 0x0, 0x0
> >
> > Let me know if you need any other details.
>
> You can use the Windows Boot Debugger. (Disclaimer: I only used it
> once). Enable it with "bcdedit /bootdebug {current} ON".
>
> To use it, you need two Windows VMs (the one that fails and one with
> WinDbg installed). It is the same as doing normal kernel debugging
> except that the debuggee will hang waiting for a connection even before
> showing the boot loader prompt. You need to connect the serial consoles
> of the VMs; I usually use socat like
>
> socat "PIPE:$tty1,unlink-close=0,noctty=1" \
> "PIPE:$tty2,unlink-close=0,noctty=1
>
> with the tty names taken from libvirt's XML. It probably works with
> Unix sockets too but I never tried.
Nice. I knew it was possible but never tried setting it up before. Really
useful to know, thanks!
>
> From WinDbg you should be able to get a backtrace. If you never used
> WinDbg, remember to set it up for downloading symbols:
> http://support.microsoft.com/kb/311503
>
> HTH,
>
> Paolo
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests
2012-03-15 21:26 ` Paolo Bonzini
2012-03-15 21:39 ` Michael Roth
@ 2012-03-15 22:10 ` Vadim Rozenfeld
1 sibling, 0 replies; 7+ messages in thread
From: Vadim Rozenfeld @ 2012-03-15 22:10 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: aliguori, Michael Roth, qemu-devel
On Thursday, March 15, 2012 11:26:00 PM Paolo Bonzini wrote:
> Il 15/03/2012 20:14, Michael Roth ha scritto:
> > Unfortunately the BSOD is too early to get a kernel dump, but here are
> > the error params in case that's useful:
> >
> > 0xFC0000096, 0xF800027F6200, 0x0, 0x0
> >
> > Let me know if you need any other details.
>
> You can use the Windows Boot Debugger. (Disclaimer: I only used it
> once). Enable it with "bcdedit /bootdebug {current} ON".
>
It is not a loader problem. You even don't need to turn halbreakpoint option
on.
> To use it, you need two Windows VMs (the one that fails and one with
> WinDbg installed). It is the same as doing normal kernel debugging
> except that the debuggee will hang waiting for a connection even before
> showing the boot loader prompt. You need to connect the serial consoles
> of the VMs; I usually use socat like
>
> socat "PIPE:$tty1,unlink-close=0,noctty=1" \
> "PIPE:$tty2,unlink-close=0,noctty=1
>
> with the tty names taken from libvirt's XML. It probably works with
> Unix sockets too but I never tried.
>
> From WinDbg you should be able to get a backtrace. If you never used
> WinDbg, remember to set it up for downloading symbols:
> http://support.microsoft.com/kb/311503
>
> HTH,
>
> Paolo
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-03-15 22:10 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-15 19:14 [Qemu-devel] BSOD when using Hyper-V extensions with Win2k8R2 guests Michael Roth
2012-03-15 19:54 ` Vadim Rozenfeld
2012-03-15 20:00 ` Anthony Liguori
2012-03-15 20:32 ` Vadim Rozenfeld
2012-03-15 21:26 ` Paolo Bonzini
2012-03-15 21:39 ` Michael Roth
2012-03-15 22:10 ` Vadim Rozenfeld
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).