34 lines
1.1 KiB
Diff
34 lines
1.1 KiB
Diff
From: Thomas Gleixner <tglx@linutronix.de>
|
|
Date: Sun, 6 Nov 2011 12:26:18 +0100
|
|
Subject: [PATCH 090/290] x86: kvm Require const tsc for RT
|
|
Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=61807edd278df58c12c72f58fd6aeae90ef41013
|
|
|
|
Non constant TSC is a nightmare on bare metal already, but with
|
|
virtualization it becomes a complete disaster because the workarounds
|
|
are horrible latency wise. That's also a preliminary for running RT in
|
|
a guest on top of a RT host.
|
|
|
|
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
|
|
---
|
|
arch/x86/kvm/x86.c | 7 +++++++
|
|
1 file changed, 7 insertions(+)
|
|
|
|
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
|
|
index 6ae8a013af31..c936e1848f28 100644
|
|
--- a/arch/x86/kvm/x86.c
|
|
+++ b/arch/x86/kvm/x86.c
|
|
@@ -6787,6 +6787,13 @@ int kvm_arch_init(void *opaque)
|
|
goto out;
|
|
}
|
|
|
|
+#ifdef CONFIG_PREEMPT_RT_FULL
|
|
+ if (!boot_cpu_has(X86_FEATURE_CONSTANT_TSC)) {
|
|
+ printk(KERN_ERR "RT requires X86_FEATURE_CONSTANT_TSC\n");
|
|
+ return -EOPNOTSUPP;
|
|
+ }
|
|
+#endif
|
|
+
|
|
r = kvm_mmu_module_init();
|
|
if (r)
|
|
goto out_free_percpu;
|