Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ea9f9274 authored by David Vrabel's avatar David Vrabel
Browse files

x86/xen: no need to explicitly register an NMI callback



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: default avatarDavid Vrabel <david.vrabel@citrix.com>
Reported-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
Tested-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
parent 562658f3
Loading
Loading
Loading
Loading
+1 −8
Original line number Original line Diff line number Diff line
@@ -594,13 +594,7 @@ void xen_enable_syscall(void)
	}
	}
#endif /* CONFIG_X86_64 */
#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)
void __init xen_pvmmu_arch_setup(void)
{
{
	HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_4gb_segments);
	HYPERVISOR_vm_assist(VMASST_CMD_enable, VMASST_TYPE_4gb_segments);
@@ -615,7 +609,6 @@ void __init xen_pvmmu_arch_setup(void)


	xen_enable_sysenter();
	xen_enable_sysenter();
	xen_enable_syscall();
	xen_enable_syscall();
	xen_enable_nmi();
}
}


/* This function is not called for HVM domains */
/* This function is not called for HVM domains */