This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] RE: Win2003R2 64 suspend failed in self live migration

To: "MaoXiaoyun" <tinnycloud@xxxxxxxxxxx>, "xen devel" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] RE: Win2003R2 64 suspend failed in self live migration
From: "James Harper" <james.harper@xxxxxxxxxxxxxxxx>
Date: Thu, 16 Jun 2011 09:20:04 +1000
Delivery-date: Wed, 15 Jun 2011 16:20:35 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <BLU157-w269412E815CBCDF33B2A83DA6B0@xxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <BAY0-MC4-F15zXiPuZe00229bef@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <BLU157-w269412E815CBCDF33B2A83DA6B0@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AcwrVI/PPsf5AebdS7e5Oy5fBaDuswAXWf7Q
Thread-topic: Win2003R2 64 suspend failed in self live migration
> Hi James;
>      I've been testing Windows HVM live migration for a while, OS type
> 2003, and 2008.
>      It works well most of time. I mean migration been two physical
>      But 2003R2 64 bit failed on self live migration. (VM migration on
> same host)
>      After instal debug version PV driver inside VM, not debug log
show up.
>      Later I learnt that, in your code  you implied that the debug
> could not be hooked since
>      "// can't patch IDT on AMD64 "(in xenpci_dbprint.c

Windows 2003 doesn't have an API for getting debug messages so I hook
the IDT, but under x64 PatchGuard monitors the IDT and causes a BSoD if
it detects a change. A program from SysInternals called DebugView can do
it so it must be possible but I've never figured out how.

>       I was able to get the log output simply by redefine the KdPrint
> like below. But unfortunately
> , VM is suffuring hang now and then.

As per my previous email, if you run out of stack space at a high IRQL
then windows can hang very hard - even the debugger won't work. I think
allocating 4KB of data on the stack (your char buf[4096]) might cause it
to run out.

You can allocate a global variable as long as you protect it with a
lock, as long as you know what you are doing with locks and IRQLs.
Alternatively you can allocate one buffer per CPU.


Xen-devel mailing list