]> xenbits.xensource.com Git - xen.git/commit
xen/arm: IRQ: Require desc.lock be held by callers of hw_irq_controller callbacks
authorJulien Grall <julien.grall@linaro.org>
Tue, 22 Apr 2014 12:58:42 +0000 (13:58 +0100)
committerIan Campbell <ian.campbell@citrix.com>
Fri, 2 May 2014 12:14:09 +0000 (13:14 +0100)
commitfe2c08a9e52cbed474081d889971a361750fee3c
tree0f49fd3ffb5e818cc2d46300d16b7325aa39df0f
parent229a9df3f216554ce5ec717b9f468ab539716efc
xen/arm: IRQ: Require desc.lock be held by callers of hw_irq_controller callbacks

When multiple action are supported, gic_irq_{startup,shutdown} will have
to be called in the same critical section as setup/release.
Otherwise there is a race condition if at the same time CPU A is calling
release_dt_irq and CPU B is calling setup_dt_irq.

This could end up with the IRQ not being enabled.

At the same time, modify gic_irq_{enable,disable} to require desc.lock be held.

With both of theses changes, ARM's locking requirements is the same as x86's.

Signed-off-by: Julien Grall <julien.grall@linaro.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
xen/arch/arm/gic.c
xen/arch/arm/irq.c
xen/arch/arm/vgic.c