[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v3 01/11] arm: rename link to inflight
The link field in pending_irq has a confusing name so rename it to inflight and comment its behaviour. Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> --- xen/arch/arm/gic.c | 4 ++-- xen/arch/arm/vgic.c | 10 +++++----- xen/include/asm-arm/domain.h | 4 +++- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c index adc10bb..120ec82 100644 --- a/xen/arch/arm/gic.c +++ b/xen/arch/arm/gic.c @@ -450,8 +450,8 @@ static void maintenance_interrupt(int irq, void *dev_id, struct cpu_user_regs *r GICC[GICC_DIR] = virq; } gic_inject_irq_stop(); - list_del(&p->link); - INIT_LIST_HEAD(&p->link); + list_del(&p->inflight); + INIT_LIST_HEAD(&p->inflight); cpu_raise_softirq(current->processor, VGIC_SOFTIRQ); spin_unlock(¤t->arch.vgic.lock); } diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c index 584e682..dd99629 100644 --- a/xen/arch/arm/vgic.c +++ b/xen/arch/arm/vgic.c @@ -85,7 +85,7 @@ int domain_vgic_init(struct domain *d) xmalloc_array(struct pending_irq, d->arch.vgic.nr_lines + (32 * d->max_vcpus)); for (i=0; i<d->arch.vgic.nr_lines + (32 * d->max_vcpus); i++) - INIT_LIST_HEAD(&d->arch.vgic.pending_irqs[i].link); + INIT_LIST_HEAD(&d->arch.vgic.pending_irqs[i].inflight); for (i=0; i<DOMAIN_NR_RANKS(d); i++) spin_lock_init(&d->arch.vgic.shared_irqs[i].lock); return 0; @@ -550,7 +550,7 @@ void vgic_vcpu_inject_irq(struct vcpu *v, unsigned int irq, int virtual) struct pending_irq *iter, *n = irq_to_pending(v, irq); /* irq still pending */ - if (!list_empty(&n->link)) + if (!list_empty(&n->inflight)) return; priority = byte_read(rank->ipriority[REG_RANK_INDEX(8, idx)], 0, byte); @@ -565,16 +565,16 @@ void vgic_vcpu_inject_irq(struct vcpu *v, unsigned int irq, int virtual) gic_set_guest_irq(irq, GICH_LR_PENDING, priority); spin_lock(&v->arch.vgic.lock); - list_for_each_entry ( iter, &v->arch.vgic.inflight_irqs, link ) + list_for_each_entry ( iter, &v->arch.vgic.inflight_irqs, inflight ) { if ( iter->priority < priority ) { - list_add_tail(&n->link, &iter->link); + list_add_tail(&n->inflight, &iter->inflight); spin_unlock(&v->arch.vgic.lock); return; } } - list_add(&n->link, &v->arch.vgic.inflight_irqs); + list_add(&n->inflight, &v->arch.vgic.inflight_irqs); spin_unlock(&v->arch.vgic.lock); /* we have a new higher priority irq, inject it into the guest */ cpu_raise_softirq(v->processor, VGIC_SOFTIRQ); diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h index 3372d14..9851220 100644 --- a/xen/include/asm-arm/domain.h +++ b/xen/include/asm-arm/domain.h @@ -20,7 +20,9 @@ struct pending_irq int irq; struct irq_desc *desc; /* only set it the irq corresponds to a physical irq */ uint8_t priority; - struct list_head link; + /* inflight is used to append instances of pending_irq to + * vgic.inflight_irqs */ + struct list_head inflight; }; struct arch_domain -- 1.7.2.5 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |