All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@linaro.org>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	xen-devel@lists.xensource.com
Cc: Julien Grall <julien.grall@citrix.com>,
	Ian Campbell <Ian.Campbell@citrix.com>
Subject: Re: [PATCH v3 0/6] interrupt handling fixes
Date: Tue, 10 Dec 2013 22:09:05 +0000	[thread overview]
Message-ID: <52A79101.8080305@linaro.org> (raw)
In-Reply-To: <alpine.DEB.2.02.1312101849060.7093@kaball.uk.xensource.com>



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@linaro.org>

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@lists.xen.org
> http://lists.xen.org/xen-devel
>

-- 
Julien Grall

  parent reply	other threads:[~2013-12-10 22:09 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-10 18:49 [PATCH v3 0/6] interrupt handling fixes Stefano Stabellini
2013-12-10 18:50 ` [PATCH v3 1/6] xen/arm: Physical IRQ is not always equal to virtual IRQ Stefano Stabellini
2013-12-10 18:50 ` [PATCH v3 2/6] xen/arm: track the state of guest IRQs Stefano Stabellini
2013-12-11 14:38   ` Ian Campbell
2013-12-11 19:00     ` Stefano Stabellini
2013-12-12 11:55       ` Ian Campbell
2013-12-12 14:55         ` Stefano Stabellini
2013-12-10 18:50 ` [PATCH v3 3/6] xen/arm: do not add a second irq to the LRs if one is already present Stefano Stabellini
2013-12-10 22:06   ` Julien Grall
2013-12-10 18:50 ` [PATCH v3 4/6] xen/arm: implement gic_irq_enable and gic_irq_disable Stefano Stabellini
2013-12-10 21:30   ` Julien Grall
2013-12-10 18:50 ` [PATCH v3 5/6] xen/arm: Only enable physical IRQs when the guest asks Stefano Stabellini
2013-12-10 21:11   ` Julien Grall
2013-12-11 12:50     ` Stefano Stabellini
2013-12-11 13:34       ` Julien Grall
2013-12-11 13:38   ` Julien Grall
2013-12-11 17:25     ` Stefano Stabellini
2013-12-10 18:50 ` [PATCH v3 6/6] xen/arm: disable a physical IRQ when the guest disables the corresponding IRQ Stefano Stabellini
2013-12-10 22:05   ` Julien Grall
2013-12-10 22:09 ` Julien Grall [this message]
2013-12-11 14:19   ` [PATCH v3 0/6] interrupt handling fixes Ian Campbell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52A79101.8080305@linaro.org \
    --to=julien.grall@linaro.org \
    --cc=Ian.Campbell@citrix.com \
    --cc=julien.grall@citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.