* [PATCH] MSR_IA32_PERF_STATUS support
@ 2008-01-09 18:48 Alexander Graf
0 siblings, 0 replies; only message in thread
From: Alexander Graf @ 2008-01-09 18:48 UTC (permalink / raw)
To: kvm-devel
[-- Attachment #1: Type: text/plain, Size: 249 bytes --]
This patch adds support for the MSR MSR_IA32_PERF_STATUS. This is
required to boot Darwin.
I only implemented dummy support, as the real value would be of no
meaning to any OS I know so far anyway and is only implemented on very
recent Intel CPUs.
[-- Attachment #2: kvm-perf.patch --]
[-- Type: text/x-patch, Size: 1114 bytes --]
Index: kernel/x86.c
===================================================================
--- kernel.orig/x86.c
+++ kernel/x86.c
@@ -412,7 +412,7 @@ static u32 msrs_to_save[] = {
#ifdef CONFIG_X86_64
MSR_CSTAR, MSR_KERNEL_GS_BASE, MSR_SYSCALL_MASK, MSR_LSTAR,
#endif
- MSR_IA32_TIME_STAMP_COUNTER,
+ MSR_IA32_TIME_STAMP_COUNTER, MSR_IA32_PERF_STATUS,
};
static unsigned num_msrs_to_save;
@@ -532,7 +532,6 @@ int kvm_get_msr_common(struct kvm_vcpu *
case MSR_IA32_MC0_MISC+12:
case MSR_IA32_MC0_MISC+16:
case MSR_IA32_UCODE_REV:
- case MSR_IA32_PERF_STATUS:
case MSR_IA32_EBL_CR_POWERON:
/* MTRR registers */
case 0xfe:
@@ -548,6 +547,12 @@ int kvm_get_msr_common(struct kvm_vcpu *
case MSR_IA32_MISC_ENABLE:
data = vcpu->arch.ia32_misc_enable_msr;
break;
+ case MSR_IA32_PERF_STATUS:
+ /* These are fake values, necessary to get
+ Darwin running */
+ data = 1000ULL /* tsc_increment_by_tick */
+ | (((uint64_t)(4ULL /* granularity */ & 0x7)) << 40);
+ break;
#ifdef CONFIG_X86_64
case MSR_EFER:
data = vcpu->arch.shadow_efer;
[-- Attachment #3: Type: text/plain, Size: 278 bytes --]
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
[-- Attachment #4: Type: text/plain, Size: 186 bytes --]
_______________________________________________
kvm-devel mailing list
kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
https://lists.sourceforge.net/lists/listinfo/kvm-devel
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2008-01-09 18:48 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-09 18:48 [PATCH] MSR_IA32_PERF_STATUS support Alexander Graf
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.