xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] x86/hvm: don't give vector callback higher priority than NMI/MCE
@ 2012-09-07 12:59 Jan Beulich
  2012-09-07 14:47 ` Keir Fraser
  2012-09-10 13:49 ` Stefano Stabellini
  0 siblings, 2 replies; 3+ messages in thread
From: Jan Beulich @ 2012-09-07 12:59 UTC (permalink / raw)
  To: xen-devel; +Cc: Stefano Stabellini

[-- Attachment #1: Type: text/plain, Size: 945 bytes --]

Those two should always be delivered first imo.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/hvm/irq.c
+++ b/xen/arch/x86/hvm/irq.c
@@ -395,16 +395,16 @@ struct hvm_intack hvm_vcpu_has_pending_i
     struct hvm_domain *plat = &v->domain->arch.hvm_domain;
     int vector;
 
-    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
-         && vcpu_info(v, evtchn_upcall_pending) )
-        return hvm_intack_vector(plat->irq.callback_via.vector);
-
     if ( unlikely(v->nmi_pending) )
         return hvm_intack_nmi;
 
     if ( unlikely(v->mce_pending) )
         return hvm_intack_mce;
 
+    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
+         && vcpu_info(v, evtchn_upcall_pending) )
+        return hvm_intack_vector(plat->irq.callback_via.vector);
+
     if ( vlapic_accept_pic_intr(v) && plat->vpic[0].int_output )
         return hvm_intack_pic(0);
 




[-- Attachment #2: x86-hvm-vector-delivery.patch --]
[-- Type: text/plain, Size: 1007 bytes --]

x86/hvm: don't give vector callback higher priority than NMI/MCE

Those two should always be delivered first imo.

Signed-off-by: Jan Beulich <jbeulich@suse.com>

--- a/xen/arch/x86/hvm/irq.c
+++ b/xen/arch/x86/hvm/irq.c
@@ -395,16 +395,16 @@ struct hvm_intack hvm_vcpu_has_pending_i
     struct hvm_domain *plat = &v->domain->arch.hvm_domain;
     int vector;
 
-    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
-         && vcpu_info(v, evtchn_upcall_pending) )
-        return hvm_intack_vector(plat->irq.callback_via.vector);
-
     if ( unlikely(v->nmi_pending) )
         return hvm_intack_nmi;
 
     if ( unlikely(v->mce_pending) )
         return hvm_intack_mce;
 
+    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
+         && vcpu_info(v, evtchn_upcall_pending) )
+        return hvm_intack_vector(plat->irq.callback_via.vector);
+
     if ( vlapic_accept_pic_intr(v) && plat->vpic[0].int_output )
         return hvm_intack_pic(0);
 

[-- Attachment #3: Type: text/plain, Size: 126 bytes --]

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] x86/hvm: don't give vector callback higher priority than NMI/MCE
  2012-09-07 12:59 [PATCH] x86/hvm: don't give vector callback higher priority than NMI/MCE Jan Beulich
@ 2012-09-07 14:47 ` Keir Fraser
  2012-09-10 13:49 ` Stefano Stabellini
  1 sibling, 0 replies; 3+ messages in thread
From: Keir Fraser @ 2012-09-07 14:47 UTC (permalink / raw)
  To: Jan Beulich, xen-devel; +Cc: Stefano Stabellini

On 07/09/2012 13:59, "Jan Beulich" <JBeulich@suse.com> wrote:

> Those two should always be delivered first imo.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Keir Fraser <keir@xen.org>

> --- a/xen/arch/x86/hvm/irq.c
> +++ b/xen/arch/x86/hvm/irq.c
> @@ -395,16 +395,16 @@ struct hvm_intack hvm_vcpu_has_pending_i
>      struct hvm_domain *plat = &v->domain->arch.hvm_domain;
>      int vector;
>  
> -    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
> -         && vcpu_info(v, evtchn_upcall_pending) )
> -        return hvm_intack_vector(plat->irq.callback_via.vector);
> -
>      if ( unlikely(v->nmi_pending) )
>          return hvm_intack_nmi;
>  
>      if ( unlikely(v->mce_pending) )
>          return hvm_intack_mce;
>  
> +    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
> +         && vcpu_info(v, evtchn_upcall_pending) )
> +        return hvm_intack_vector(plat->irq.callback_via.vector);
> +
>      if ( vlapic_accept_pic_intr(v) && plat->vpic[0].int_output )
>          return hvm_intack_pic(0);
>  
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] x86/hvm: don't give vector callback higher priority than NMI/MCE
  2012-09-07 12:59 [PATCH] x86/hvm: don't give vector callback higher priority than NMI/MCE Jan Beulich
  2012-09-07 14:47 ` Keir Fraser
@ 2012-09-10 13:49 ` Stefano Stabellini
  1 sibling, 0 replies; 3+ messages in thread
From: Stefano Stabellini @ 2012-09-10 13:49 UTC (permalink / raw)
  To: Jan Beulich; +Cc: Stefano Stabellini, xen-devel

On Fri, 7 Sep 2012, Jan Beulich wrote:
> Those two should always be delivered first imo.
> 
> Signed-off-by: Jan Beulich <jbeulich@suse.com>

Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>

> --- a/xen/arch/x86/hvm/irq.c
> +++ b/xen/arch/x86/hvm/irq.c
> @@ -395,16 +395,16 @@ struct hvm_intack hvm_vcpu_has_pending_i
>      struct hvm_domain *plat = &v->domain->arch.hvm_domain;
>      int vector;
>  
> -    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
> -         && vcpu_info(v, evtchn_upcall_pending) )
> -        return hvm_intack_vector(plat->irq.callback_via.vector);
> -
>      if ( unlikely(v->nmi_pending) )
>          return hvm_intack_nmi;
>  
>      if ( unlikely(v->mce_pending) )
>          return hvm_intack_mce;
>  
> +    if ( (plat->irq.callback_via_type == HVMIRQ_callback_vector)
> +         && vcpu_info(v, evtchn_upcall_pending) )
> +        return hvm_intack_vector(plat->irq.callback_via.vector);
> +
>      if ( vlapic_accept_pic_intr(v) && plat->vpic[0].int_output )
>          return hvm_intack_pic(0);
>  
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-09-10 13:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-07 12:59 [PATCH] x86/hvm: don't give vector callback higher priority than NMI/MCE Jan Beulich
2012-09-07 14:47 ` Keir Fraser
2012-09-10 13:49 ` Stefano Stabellini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).