Hi Andre,
On 09/06/17 18:41, Andre Przywara wrote:
To avoid code duplication in a later patch, introduce a generic function
to remove a virtual IRQ from the VGIC.
Call that function instead of the open-coded version in vgic_migrate_irq().
Signed-off-by: Andre Przywara <andre.przyw...@arm.com>
---
xen/arch/arm/gic.c | 9 +++++++++
xen/arch/arm/vgic.c | 4 +---
xen/include/asm-arm/gic.h | 1 +
3 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c
index 6c0c9c3..e0c54d5 100644
--- a/xen/arch/arm/gic.c
+++ b/xen/arch/arm/gic.c
@@ -407,6 +407,15 @@ void gic_remove_from_lr_pending(struct vcpu *v, struct
pending_irq *p)
list_del_init(&p->lr_queue);
}
+void gic_remove_irq(struct vcpu *v, struct pending_irq *p)
Again, the name is too generic. Remove IRQ from what?
+{
+ ASSERT(spin_is_locked(&v->arch.vgic.lock));
+
+ clear_bit(GIC_IRQ_GUEST_QUEUED, &p->status);
+ list_del_init(&p->inflight);
+ gic_remove_from_lr_pending(v, p);
+}
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel