[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] enable architectural PMU cpuid leaf for kvm
From: |
Gleb Natapov |
Subject: |
Re: [Qemu-devel] [PATCH] enable architectural PMU cpuid leaf for kvm |
Date: |
Thu, 15 Dec 2011 17:13:02 +0200 |
On Thu, Dec 15, 2011 at 09:09:32AM -0600, Anthony Liguori wrote:
> On 12/15/2011 04:44 AM, Gleb Natapov wrote:
> >
> >Signed-off-by: Gleb Natapov<address@hidden>
>
> This should go in via uq/master.
uq/master maintainers can you take it?
>
> Regards,
>
> Anthony Liguori
>
> >diff --git a/target-i386/cpuid.c b/target-i386/cpuid.c
> >index 0b3af90..91a104b 100644
> >--- a/target-i386/cpuid.c
> >+++ b/target-i386/cpuid.c
> >@@ -1180,10 +1180,19 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t index,
> >uint32_t count,
> > break;
> > case 0xA:
> > /* Architectural Performance Monitoring Leaf */
> >- *eax = 0;
> >- *ebx = 0;
> >- *ecx = 0;
> >- *edx = 0;
> >+ if (kvm_enabled()) {
> >+ KVMState *s = env->kvm_state;
> >+
> >+ *eax = kvm_arch_get_supported_cpuid(s, 0xA, count, R_EAX);
> >+ *ebx = kvm_arch_get_supported_cpuid(s, 0xA, count, R_EBX);
> >+ *ecx = kvm_arch_get_supported_cpuid(s, 0xA, count, R_ECX);
> >+ *edx = kvm_arch_get_supported_cpuid(s, 0xA, count, R_EDX);
> >+ } else {
> >+ *eax = 0;
> >+ *ebx = 0;
> >+ *ecx = 0;
> >+ *edx = 0;
> >+ }
> > break;
> > case 0xD:
> > /* Processor Extended State */
> >--
> > Gleb.
> >
> >
--
Gleb.