From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v5 5/6] xen/arm: vgic: Introduce helpers to extract/update/clear/set vGIC register ... Date: Wed, 11 Nov 2015 16:09:22 +0000 Message-ID: <56436832.9050705@citrix.com> References: <1447084181-13677-1-git-send-email-julien.grall@citrix.com> <1447084181-13677-6-git-send-email-julien.grall@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1ZwXyy-0000Sh-Pk for xen-devel@lists.xenproject.org; Wed, 11 Nov 2015 16:10:48 +0000 In-Reply-To: <1447084181-13677-6-git-send-email-julien.grall@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: xen-devel@lists.xenproject.org Cc: ian.campbell@citrix.com, stefano.stabellini@eu.citrix.com List-Id: xen-devel@lists.xenproject.org Hi, I've just noticed one error in this patch :/ On 09/11/15 15:49, Julien Grall wrote: > @@ -482,16 +500,16 @@ static int __vgic_v3_distr_common_mmio_write(const char *name, struct vcpu *v, > return 0; > > case GICD_IPRIORITYR ... GICD_IPRIORITYRN: > + { > + uint32_t *ipriorityr; > + > if ( dabt.size != DABT_BYTE && dabt.size != DABT_WORD ) goto bad_width; > rank = vgic_rank_offset(v, 8, reg - GICD_IPRIORITYR, DABT_WORD); > if ( rank == NULL ) goto write_ignore; > vgic_lock_rank(v, rank, flags); > - if ( dabt.size == DABT_WORD ) > - rank->ipriorityr[REG_RANK_INDEX(8, reg - GICD_IPRIORITYR, > - DABT_WORD)] = r; > - else > - vgic_byte_write(&rank->ipriorityr[REG_RANK_INDEX(8, > - reg - GICD_IPRIORITYR, DABT_WORD)], r, reg); > + ipriorityr = &rank->ipriorityr[REG_RANK_INDEX(8, reg - GICD_IPRIORITYR, > + DABT_WORD)]; > + vgic_reg32_update(ipriorityr, r, info); > vgic_unlock_rank(v, rank, flags); > return 1; There is a missing } here. Somehow gcc didn't complain but there is a spurious closed brace in the next case. > case GICD_ICFGR: /* Restricted to configure SGIs */ > @@ -503,9 +521,13 @@ static int __vgic_v3_distr_common_mmio_write(const char *name, struct vcpu *v, > rank = vgic_rank_offset(v, 2, reg - GICD_ICFGR, DABT_WORD); > if ( rank == NULL ) goto write_ignore; > vgic_lock_rank(v, rank, flags); > - rank->icfg[REG_RANK_INDEX(2, reg - GICD_ICFGR, DABT_WORD)] = r; > + vgic_reg32_update(&rank->icfg[REG_RANK_INDEX(2, reg - GICD_ICFGR, > + DABT_WORD)], > + r, info); > vgic_unlock_rank(v, rank, flags); > return 1; > + } > + Here is the spurious one. I will either resend this whole series or only this patch depending on the reviews. Regards, -- Julien Grall