[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] x86/xen: no need to explicitly register an NMI callback



David Vrabel <david.vrabel@xxxxxxxxxx> writes:

> Remove xen_enable_nmi() to fix a 64-bit guest crash when registering
> the NMI callback on Xen 3.1 and earlier.
>
> It's not needed since the NMI callback is set by a set_trap_table
> hypercall (in xen_load_idt() or xen_write_idt_entry()).
>
> It's also broken since it only set the current VCPU's callback.
>
> Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
> Reported-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>

Smoke tested with RHEL5 Xen and x86_64 PV guest + Xen-4.3.2 and x86_64
PV guest.

Tested-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>

> ---
>  arch/x86/xen/setup.c |    9 +--------
>  1 file changed, 1 insertion(+), 8 deletions(-)
>
> diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
> index 821a11a..3f96911 100644
> --- a/arch/x86/xen/setup.c
> +++ b/arch/x86/xen/setup.c
> @@ -590,13 +590,7 @@ void xen_enable_syscall(void)
>       }
>  #endif /* CONFIG_X86_64 */
>  }
> -void xen_enable_nmi(void)
> -{
> -#ifdef CONFIG_X86_64
> -     if (register_callback(CALLBACKTYPE_nmi, (char *)nmi))
> -             BUG();
> -#endif
> -}
> +
>  void __init xen_pvmmu_arch_setup(void)
>  {
>       HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_4gb_segments);
> @@ -611,7 +605,6 @@ void __init xen_pvmmu_arch_setup(void)
>
>       xen_enable_sysenter();
>       xen_enable_syscall();
> -     xen_enable_nmi();
>  }
>
>  /* This function is not called for HVM domains */

-- 
  Vitaly

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.