[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH-4.5 v2 0/10] remove maintenance interrupts
Hi all, this patch series removes any needs for maintenance interrupts for both hardware and software interrupts in Xen. It achieves the goal by using the GICH_LR_HW bit for hardware interrupts and by checking the status of the GICH_LR registers on return to guest, clearing the registers that are invalid and handling the lifecycle of the corresponding interrupts in Xen data structures. Changes in v2: - do not assume physical IRQ == virtual IRQ; - refactor gic_set_lr; - simplify gic_clear_lrs; - disable/enable the GICH_HCR_UIE bit in GICH_HCR; - only enable GICH_HCR_UIE if this_cpu(lr_mask) == ((1 << nr_lrs) - 1); - add a patch to keep track of the LR number in pending_irq; - add a patch to set GICH_LR_PENDING to inject a second irq while the first one is still active; - add a patch to simplify and reduce the usage of gic.lock; - add a patch to reduce the usage of vgic.lock; - add a patch to use GICH_ELSR[01] to avoid reading all the GICH_LRs in gic_clear_lrs; - add a debug patch to print more info in gic_dump_info. Stefano Stabellini (10): xen/arm: remove unused virtual parameter from vgic_vcpu_inject_irq xen/arm: support HW interrupts in gic_set_lr xen/arm: do not request maintenance_interrupts xen/arm: set GICH_HCR_NPIE if all the LRs are in use xen/arm: keep track of the GICH_LR used for the irq in struct pending_irq xen/arm: second irq injection while the first irq is still inflight xen/arm: don't protect GICH and lr_queue accesses with gic.lock xen/arm: avoid taking unconditionally the vgic.lock in gic_clear_lrs xen/arm: use GICH_ELSR[01] to avoid reading all the GICH_LRs in gic_clear_lrs xen/arm: print more info in gic_dump_info, keep gic_lr sync'ed xen/arch/arm/domain.c | 2 +- xen/arch/arm/gic.c | 216 +++++++++++++++++++++++++++++-------------------------- xen/arch/arm/irq.c | 2 +- xen/arch/arm/time.c | 2 +- xen/arch/arm/vgic.c | 34 ++++++--- xen/arch/arm/vtimer.c | 4 +- xen/include/asm-arm/domain.h | 1 + xen/include/asm-arm/gic.h | 4 +- 8 files changed, 151 insertions(+), 114 deletions(-) git://xenbits.xen.org/people/sstabellini/xen-unstable.git no_maintenance_interrupts-v2 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |