From: Juergen Gross Subject: [Patch] correct nmi injection to guest Date: Thu, 05 Aug 2010 07:02:24 +0200 Message-ID: <4C5A45E0.3060206@ts.fujitsu.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070207090801040304020406" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------070207090801040304020406 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi, attached patch corrects nmi injection to guest. The problem was introduced by the following patch IMHO: http://lists.xensource.com/archives/html/xen-devel/2009-12/msg00002.html Juergen -- Juergen Gross Principal Developer Operating Systems TSP ES&S SWE OS6 Telephone: +49 (0) 89 3222 2967 Fujitsu Technology Solutions e-mail: juergen.gross@ts.fujitsu.com Domagkstr. 28 Internet: ts.fujitsu.com D-80807 Muenchen Company details: ts.fujitsu.com/imprint.html --------------070207090801040304020406 Content-Type: text/x-patch; name="nmi.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="nmi.patch" Signed-off-by: juergen.gross@ts.fujitsu.com diff -r 668f71224241 xen/arch/x86/x86_32/entry.S --- a/xen/arch/x86/x86_32/entry.S Mon Aug 02 16:58:50 2010 +0100 +++ b/xen/arch/x86/x86_32/entry.S Thu Aug 05 06:56:06 2010 +0200 @@ -264,7 +264,7 @@ process_mce: ALIGN /* %ebx: struct vcpu */ process_nmi: - cmpw $1 << VCPU_TRAP_NMI,VCPU_async_exception_mask(%ebx) + testb $1 << VCPU_TRAP_NMI,VCPU_async_exception_mask(%ebx) jnz test_guest_events sti movb $0,VCPU_nmi_pending(%ebx) diff -r 668f71224241 xen/arch/x86/x86_64/compat/entry.S --- a/xen/arch/x86/x86_64/compat/entry.S Mon Aug 02 16:58:50 2010 +0100 +++ b/xen/arch/x86/x86_64/compat/entry.S Thu Aug 05 06:56:06 2010 +0200 @@ -137,7 +137,7 @@ compat_process_mce: ALIGN /* %rbx: struct vcpu */ compat_process_nmi: - cmpw $1 << VCPU_TRAP_NMI,VCPU_async_exception_mask(%rbx) + testb $1 << VCPU_TRAP_NMI,VCPU_async_exception_mask(%rbx) jnz compat_test_guest_events sti movb $0,VCPU_nmi_pending(%rbx) diff -r 668f71224241 xen/arch/x86/x86_64/entry.S --- a/xen/arch/x86/x86_64/entry.S Mon Aug 02 16:58:50 2010 +0100 +++ b/xen/arch/x86/x86_64/entry.S Thu Aug 05 06:56:06 2010 +0200 @@ -239,7 +239,7 @@ process_mce: ALIGN /* %rbx: struct vcpu */ process_nmi: - cmpw $1 << VCPU_TRAP_NMI,VCPU_async_exception_mask(%rbx) + testb $1 << VCPU_TRAP_NMI,VCPU_async_exception_mask(%rbx) jnz test_guest_events sti movb $0,VCPU_nmi_pending(%rbx) --------------070207090801040304020406 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------------070207090801040304020406--