aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/kernel.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-22 06:31:47 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-22 06:31:47 +0100
commit3f03c620370e99bdf78120ce64580cd715ad150f (patch)
tree946d935765f472c31471d5310e7207e717bb035c /xen/common/kernel.c
parentf3b88f2e646418ad3ed8ce7a19ea32d0b382654a (diff)
downloadxen-3f03c620370e99bdf78120ce64580cd715ad150f.tar.gz
xen-3f03c620370e99bdf78120ce64580cd715ad150f.tar.bz2
xen-3f03c620370e99bdf78120ce64580cd715ad150f.zip
x86: TSC handling cleanups (version 2)
"I am removing the tsc_scaled variable that is never actually used because when tsc needs to be scaled vtsc is 1. I am also making this more explicit in tsc_set_info. I am also removing hvm_domain.gtsc_khz that is a duplicate of d->arch.tsc_khz. I am using scale_delta(delta, &d->arch.ns_to_vtsc) to scale the tsc value before returning it to the guest like in the pv case. I added a feature flag to specify that the pvclock algorithm is safe to be used in an HVM guest so that the guest can now use it without hanging." Version 2 fixes a bug which breaks PV domU time. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Diffstat (limited to 'xen/common/kernel.c')
-rw-r--r--xen/common/kernel.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/xen/common/kernel.c b/xen/common/kernel.c
index f9d1dedb66..61a798df4e 100644
--- a/xen/common/kernel.c
+++ b/xen/common/kernel.c
@@ -259,6 +259,8 @@ DO(xen_version)(int cmd, XEN_GUEST_HANDLE(void) arg)
fi.submap |= (1U << XENFEAT_mmu_pt_update_preserve_ad) |
(1U << XENFEAT_highmem_assist) |
(1U << XENFEAT_gnttab_map_avail_bits);
+ else
+ fi.submap |= (1U << XENFEAT_hvm_safe_pvclock);
#endif
break;
default: