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

Re: [Xen-devel] [PATCH v3 0/6] interrupt handling fixes



On Tue, 2013-12-10 at 22:09 +0000, Julien Grall wrote:
> 
> On 12/10/2013 06:49 PM, Stefano Stabellini wrote:
> > Hi all,
> > this series is a reworked version of "Fix multiple issues with the
> > interrupts on ARM":
> >
> > http://marc.info/?l=xen-devel&m=137211515720144
> >
> > It fixes a few different issues that affect interrupt handling in Xen on
> > ARM today:
> >
> > - the guest looses a vtimer interrupt notification when it sets a
> > deadline in the past from the guest vtimer interrupt handler, before
> > EOIing the interrupt;
> >
> > - Xen adds a guest irq to the LR registers twice if the guest disables
> > and renables an interrupt before EOIing it;
> >
> > - Xen enables interrupts corresponding to devices assigned to dom0
> > before booting dom0, resulting in the possibility of receiving an
> > interrupt and not knowing what to do with it.
> 
> The 2 last issues was found on the versatile express. I gave a try with 
> this patch series and it works fine.
> 
> For the versatile express:
> 
> Tested-by: Julien Grall <julien.grall@xxxxxxxxxx>

I tried it on the X-gene too.

> 
> I will give a try to the first bug on the Arndale tomorrow.
> 
> > Changes in v3:
> > - do not set the GUEST_PENDING bit for evtchn_irq if the irq is already
> > guest visible.
> >
> > Changes in v2:
> > - remove eoi variable and check on p->desc != NULL instead;
> > - use atomic operations to modify the pending_irq status bits, remove
> > the now unnecessary locks;
> > - make status unsigned long;
> > - in maintenance_interrupt only stops injecting interrupts if no new
> > interrupts have been added to the LRs;
> > - add a state to keep track whether the guest irq is enabled at the
> > vgicd level;
> > - no need to read the current GICD_ISENABLER before writing it;
> > - protect startup and shutdown with gic and desc locks;
> > - disable IRQs that were previously disabled.
> >
> >
> > Julien Grall (2):
> >        xen/arm: Physical IRQ is not always equal to virtual IRQ
> >        xen/arm: Only enable physical IRQs when the guest asks
> >
> > Stefano Stabellini (4):
> >        xen/arm: track the state of guest IRQs
> >        xen/arm: do not add a second irq to the LRs if one is already present
> >        xen/arm: implement gic_irq_enable and gic_irq_disable
> >        xen/arm: disable a physical IRQ when the guest disables the 
> > corresponding IRQ
> >
> >   xen/arch/arm/gic.c           |  130 
> > +++++++++++++++++++++++++-----------------
> >   xen/arch/arm/vgic.c          |   43 +++++++++++---
> >   xen/include/asm-arm/domain.h |   40 +++++++++++++
> >   3 files changed, 154 insertions(+), 59 deletions(-)
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxx
> > http://lists.xen.org/xen-devel
> >
> 



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