Dear all
I
saw a change about NMI handling in C/S 20059. So could anyone tell me what’s
the difference of these two ways? We found that after changing to ‘self_nmi()’,
xenoprofile cannot work correctly. Since ‘self_nmi()’ issue a
hypervisor nmi and there is no change for xenoprofile to record HVM guest regs
information.
--- a/xen/arch/x86/hvm/vmx/vmx.c Fri
Aug 14 10:57:24 2009 +0100
+++ b/xen/arch/x86/hvm/vmx/vmx.c Fri
Aug 14 10:58:32 2009 +0100
@@ -945,8 +945,6 @@ static void
vmx_enable_rdtsc_exiting(str
vmx_vmcs_exit(v);
}
-void do_nmi(struct cpu_user_regs *);
-
static void
vmx_init_hypercall_page(struct domain *d, void *hypercall_page)
{
char *p;
@@ -2470,7 +2468,7 @@ asmlinkage void
vmx_vmexit_handler(struc
(X86_EVENTTYPE_NMI << 8) )
goto exit_and_crash;
HVMTRACE_0D(NMI);
-
do_nmi(regs); /* Real NMI, vector 2: normal processing. */
+
self_nmi(); /* Real NMI, vector 2: normal processing. */
break;
case TRAP_machine_check:
HVMTRACE_0D(MCE);
Best
regards!
Lv,hui