From fdf5b4f5674f12886bc2e5fede9f5d949f0de0ea Mon Sep 17 00:00:00 2001 From: Thomas Gleixner <tglx@linutronix.de> Date: Sun, 6 Nov 2011 12:26:18 +0100 Subject: [PATCH 122/158] x86: kvm Require const tsc for RT 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 | 8 ++++++++ 1 file changed, 8 insertions(+) Index: linux-5.15/arch/x86/kvm/x86.c =================================================================== --- linux-5.15.orig/arch/x86/kvm/x86.c +++ linux-5.15/arch/x86/kvm/x86.c @@ -8523,6 +8523,14 @@ int kvm_arch_init(void *opaque) goto out; } +#ifdef CONFIG_PREEMPT_RT + if (!boot_cpu_has(X86_FEATURE_CONSTANT_TSC)) { + pr_err("RT requires X86_FEATURE_CONSTANT_TSC\n"); + r = -EOPNOTSUPP; + goto out; + } +#endif + r = -ENOMEM; x86_fpu_cache = kmem_cache_create("x86_fpu", sizeof(struct fpu), __alignof__(struct fpu), SLAB_ACCOUNT,