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] how to keep time of windows pvhvm synchronized with host aft

To: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] how to keep time of windows pvhvm synchronized with host after resuming
From: ANNIE LI <annie.li@xxxxxxxxxx>
Date: Thu, 16 Sep 2010 16:30:56 +0800
Delivery-date: Thu, 16 Sep 2010 01:32:15 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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>
Organization: Oracle Corporation
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird (Windows/20100228)

When the virtual machine is resumed from suspend, the guest operating system's wall-clock time remains at the value it had at the time of the suspension. For linux pvm, we can avoid resolve issue by setting independent_wallclock=0. However, HVM(or PVHVM) does not support this feature.

I did some investigation on how to implement this in windows para-virtualization driver. In \include\xen\interface\xen.h, there are several variables about timer such as: wc_sec and wc_nsec, and vcpu_time_info struct. It is very strange, wc_sec and wc_nsec is always zero for my windows vm with para-virtualization driver. Vcpu_time_info only contains time info for specific vcpu. Should i use those variables to get accurate time for VM? Is there any corresponding source code or algorithms available now? Is it safe to simply update vm time after resuming?

Citrix 5.6 Windows para-virtualization driver will notify windows kernel time change after resuming, and resumed windows vm with Citrix pv driver can keep it's time synchronized with host. Would you like to give me some clues about how to implement this?

Any help is greatly appreciated.


Xen-devel mailing list