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


RE: [xen-devel] System time monotonicity

To: "Ian Pratt" <Ian.Pratt@xxxxxxxxxxxxx>, "Tian, Kevin" <kevin.tian@xxxxxxxxx>, "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [xen-devel] System time monotonicity
From: "Dan Magenheimer" <dan.magenheimer@xxxxxxxxxx>
Date: Wed, 9 Apr 2008 08:25:39 -0600
Delivery-date: Wed, 09 Apr 2008 07:27:03 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <DD74FBB8EE28D441903D56487861CD9D2C013C32@xxxxxxxxxxxxxxxxxxxxxx>
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/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Oracle Corporation
Reply-to: "dan.magenheimer@xxxxxxxxxx" <dan.magenheimer@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
> Although Xen is fine, guests can get confused if they're 
> relying on the
> TSC. Fortunately, Windows doesn't rely on the TSC, and most folk run
> Linux PV which also works fine.
> If you want to make Linux work HVM on such a system you need to either
> convince it to not to use the TSC, or arrange for TSC reads to trap to
> Xen and then compute the result based on Xen's time base. If you're
> doing the latter, better hope that TSC reads aren't called 
> frequently...

Hi Ian --

Let me clarify... unless my reading of the code is wrong, ALL hvm
guests that rely on ANY (virtual) platform timer are UNKNOWINGLY
relying on the physical TSCs.  Thus if the underlying physical
system has unsynchronized TSCs, different vcpus in an SMP HVM
guest (or even the SAME vcpu when rescheduled on another pcpu)
may find that consecutive reads of ANY (virtual) platform timer
are unexpectedly non-monotonic, which violates the whole purpose
of using a PLATFORM timer.

I suspect this is unintended and bad?


Xen-devel mailing list