[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] how to keep time of windows pvhvm synchronized with host after resuming



At 11:44 +0100 on 17 Sep (1284723898), ANNIE LI wrote:
> Maybe this is not a problem of shared-info page.

> The problem is wc_sec and wc_nsec does not change until i modify
> wallclock time of windows vm manually.
> If i do not change the wallclock, wc_sec will keep the same value. For
> example: the initial value of wc_sec is zero,
> then it changes to 0x4c64da92 if i change wallclock, 0x4c64da92 is
> about 40 years since 1970.
>
> I am using xen3.4 for test, any patch i missed?

Not that I can remember.  You could try scattering printks in 
hvm_latch_shinfo_size() to see if it's getting called at all,
and in arch_set_info_guest() to see if it's calling
update_domain_wallclock_time() like it should. 

Tim.
 
> Thanks
> Annie
> 
> 
> One problem with using wc_[n]sec to get the wallclock time is that the
> usual Xen way to get the system time is to interpolate it from the RDTSC
> value and the per-vcpu time info, but in a HVM guest the OS may have
> changed the TSC offset to something that the driver can't figure out.
> The Citrix PV drivers use the HVMOP_get_time hypercall to get the system
> time instead; that hypercall is in xen-unstable but not the 4.0 branch.
> 
> If you're using a linux guest with Stefano's pv-on-hvm patches then I
> think you should be able to read the PV system time as normal.
> 
> Tim.
> 
> 
> 
>   Paul
> 
> 
> 
> -----Original Message-----
> From: 
> xen-devel-bounces@xxxxxxxxxxxxxxxxxxx<mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx>
>  [mailto:xen-devel-
> bounces@xxxxxxxxxxxxxxxxxxx<mailto:bounces@xxxxxxxxxxxxxxxxxxx>] On Behalf Of 
> ANNIE LI
> Sent: 16 September 2010 09:31
> To: xen-devel@xxxxxxxxxxxxxxxxxxx<mailto:xen-devel@xxxxxxxxxxxxxxxxxxx>
> Subject: [Xen-devel] how to keep time of windows pvhvm synchronized
> with host after resuming
> 
> Hi
> 
> 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.
> 
> Thanks
> Annie
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx<mailto:Xen-devel@xxxxxxxxxxxxxxxxxxx>
> http://lists.xensource.com/xen-devel
> 
> 
> 
> Content-Description: ATT00001..txt
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx<mailto:Xen-devel@xxxxxxxxxxxxxxxxxxx>
> http://lists.xensource.com/xen-devel
> 
> 
> 
> 
> 

-- 
Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Principal Software Engineer, XenServer Engineering
Citrix Systems UK Ltd.  (Company #02937203, SL9 0BG)

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.