From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH v9 12/12] xen/arm: gic_events_need_delivery and irq priorities Date: Wed, 18 Jun 2014 11:36:45 +0100 Message-ID: <1403087805.14448.9.camel@kazak.uk.xensource.com> References: <1402409240-28114-12-git-send-email-stefano.stabellini@eu.citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1402409240-28114-12-git-send-email-stefano.stabellini@eu.citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Stefano Stabellini Cc: julien.grall@citrix.com, xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On Tue, 2014-06-10 at 15:07 +0100, Stefano Stabellini wrote: > Introduce GIC_IRQ_GUEST_ACTIVE to track which irqs are currently > active in the guest. > > gic_events_need_delivery should only return positive if an outstanding > pending irq has an higher group priority than the currently active group > priotity and the priority mask. > Read GICH_APR to find the active group priority. > Read GICH_VMCR to find the priority mask. > Find the highest priority non-active enabled irq by going through the > inflight list. > > In gic_restore_pending_irqs replace lower priority pending (and not > active) irqs in GICH_LRs with higher priority irqs if no more GICH_LRs > are available. > > Signed-off-by: Stefano Stabellini > > --- > > Changes in v9: > - gic_events_need_delivery: read GICH_APR to find the active group > priority; > - gic_events_need_delivery: simplify the search loop. Thanks, I can actually grok this version ;-) Acked this + #9. AIUI there is no relationship here with "xen/arm: make accesses to desc->status flags atomic" which fixes an issue which already present before this series. There applied (this series, not the atomic flags one, yet). thanks. Ian.