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

Re: [Xen-devel] [PATCH 2/4] x86/nmi: enable local irqs in wait_for_nmis()



At 14:57 +0100 on 14 May (1400075856), Jan Beulich wrote:
> >>> On 14.05.14 at 14:58, <david.vrabel@xxxxxxxxxx> wrote:
> > --- a/xen/arch/x86/nmi.c
> > +++ b/xen/arch/x86/nmi.c
> > @@ -111,7 +111,14 @@ int nmi_active;
> >  
> >  static void __init wait_for_nmis(void *p)
> >  {
> > +    unsigned long flags;
> > +
> > +    local_save_flags(flags);
> > +    local_irq_enable();
> > +
> >      mdelay((10*1000)/nmi_hz); /* wait 10 ticks */
> > +
> > +    local_irq_restore(flags);
> >  }
> 
> This being the callback for on_selected_cpus(), i.e. called out of
> interrupt context, I don't think it is uniformly safe to enable
> interrupts here.

Yes, I think if you really need this (and I don't see what the problem
is with serial interrupts being delayed as long as they're not lost),
you'll have to use some sort of softirq context to do this spinning.

Tim.

_______________________________________________
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®.