aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/hvm/pmtimer.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-05-24 09:27:03 +0100
committerKeir Fraser <keir.fraser@citrix.com>2008-05-24 09:27:03 +0100
commite1845bbe732b5ad5755f0f3a93fb6ea85919e8a2 (patch)
treefbdbe843c34d11b19ffc3fef6c6304103a1e7bc3 /xen/arch/x86/hvm/pmtimer.c
parentd0f28d825eafe00591d7b80b8de26e4fd783d924 (diff)
downloadxen-e1845bbe732b5ad5755f0f3a93fb6ea85919e8a2.tar.gz
xen-e1845bbe732b5ad5755f0f3a93fb6ea85919e8a2.tar.bz2
xen-e1845bbe732b5ad5755f0f3a93fb6ea85919e8a2.zip
hvm: Build guest timers on monotonic system time.
Move hvm platform timers from underlying physical CPU TSC to Xen system time and ensure domain-wide monotonicity. TSC on many systems may skew between processors leading to 'time going backwards' messages from some guests. Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/arch/x86/hvm/pmtimer.c')
-rw-r--r--xen/arch/x86/hvm/pmtimer.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/xen/arch/x86/hvm/pmtimer.c b/xen/arch/x86/hvm/pmtimer.c
index ee5b58f37d..15bb3c3ef6 100644
--- a/xen/arch/x86/hvm/pmtimer.c
+++ b/xen/arch/x86/hvm/pmtimer.c
@@ -257,7 +257,7 @@ void pmtimer_init(struct vcpu *v)
spin_lock_init(&s->lock);
- s->scale = ((uint64_t)FREQUENCE_PMTIMER << 32) / ticks_per_sec(v);
+ s->scale = ((uint64_t)FREQUENCE_PMTIMER << 32) / SYSTEM_TIME_HZ;
s->vcpu = v;
/* Intercept port I/O (need two handlers because PM1a_CNT is between