On Monday 28 January 2008 05:59:25 pm Joerg Roedel wrote: > On Mon, Jan 28, 2008 at 01:48:40PM +0530, Balaji Rao wrote: > > Hello, > > > > I was trying to enable the use of nmi watchdog within a linux guest > > running in kvm. I have done it by allowing direct access to perfmon msrs > > using the MSR_BITMAP field in vmcs region. > > Is there a proper virtualization of the performance counter MSRs on > Intel? If not this patch will destroy any host side performance > monitoring. > No. It has to be handled by the VMM. I shall do this in a later patch. This is just a quick and dirty attempt to solve this problem.
<snip> > This patch kills the ability of KVM to migrate between AMD and Intel > because the Intel performance counters are not available on AMD and vice > verca. > Yes. The way we should solve this is by emulating the MSRs. Am not sure about the overhead involved. What are your thoughts on this ? > > diff --git a/include/asm-x86/kvm_host.h b/include/asm-x86/kvm_host.h > > index 67ae307..f17248d 100644 > > --- a/include/asm-x86/kvm_host.h > > +++ b/include/asm-x86/kvm_host.h > > @@ -387,6 +387,7 @@ struct kvm_x86_ops { > > void (*queue_exception)(struct kvm_vcpu *vcpu, unsigned nr, > > bool has_error_code, u32 error_code); > > bool (*exception_injected)(struct kvm_vcpu *vcpu); > > + void (*inject_nmi)(struct kvm_vcpu *vcpu); > > The implementation of this new callback for SVM is missing. I just wanted to get it running on my hardware first! :) Will implement it for SVM once I get the approach right. > > > void (*inject_pending_irq)(struct kvm_vcpu *vcpu); > > void (*inject_pending_vectors)(struct kvm_vcpu *vcpu, > > struct kvm_run *run); > > --- thank you for the comments, regards, balaji rao ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel