From: Rusty Russell Lguest guests don't use the TSC, and so we must disable it otherwise sched-clock.c barfs. Also, we no longer need to explicitly set the PGE feature bit: cpu_detect->cpuid->lguest_cpuid does that for us now that cpu_detect uses paravirt_ops (IIRC it used to do a direct cpuid from assembler). Signed-off-by: Rusty Russell Signed-off-by: Andrew Morton --- drivers/lguest/lguest.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/lguest/lguest.c~lguest-the-guest-code-update-for-mm-disable-tsc-dont-set-pge-bit drivers/lguest/lguest.c --- a/drivers/lguest/lguest.c~lguest-the-guest-code-update-for-mm-disable-tsc-dont-set-pge-bit +++ a/drivers/lguest/lguest.c @@ -502,11 +502,11 @@ __init void lguest_init(void) reserve_top_address(lguest_data.reserve_mem); cpu_detect(&new_cpu_data); - /* Need this before paging_init. */ - set_bit(X86_FEATURE_PGE, new_cpu_data.x86_capability); /* Math is always hard! */ new_cpu_data.hard_math = 1; + tsc_disable = 1; + #ifdef CONFIG_X86_MCE mce_disabled = 1; #endif _