From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4776FC3F2CD for ; Fri, 28 Feb 2020 19:37:53 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1B277246A2 for ; Fri, 28 Feb 2020 19:37:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1582918673; bh=GR2XIlY7VhwIG2Z0tuLnjCZ9twVNAAlxyjR6cCpLapc=; h=Date:From:To:Cc:Subject:In-Reply-To:References:List-ID:From; b=DWKYQM57MeDIIbzvd2VtWqMnhubIbg4j0MyaK8NAmTH3jGT54ruPrDPFd8BV/eSiX cJxIyCC+cY6r+Rq6QTSqiKnp7YQpatunBpT8meMaiH4Gy74hCqITIuPWMk0vnG9VKS zGZfN+/yaUDP2xiPB0dM1VdkWk+M7pRKiY48Hq+4= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726917AbgB1Thw (ORCPT ); Fri, 28 Feb 2020 14:37:52 -0500 Received: from mail.kernel.org ([198.145.29.99]:56282 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726046AbgB1Thv (ORCPT ); Fri, 28 Feb 2020 14:37:51 -0500 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 2B5062468E; Fri, 28 Feb 2020 19:37:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1582918670; bh=GR2XIlY7VhwIG2Z0tuLnjCZ9twVNAAlxyjR6cCpLapc=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=MDC+EaNmqCEkJ+97BWWShMEb2fNu+dKrf+uEr314pT30XDXvN51eMNGx0x1pj7zcA j6PJ/803E6x7Gg2YjNyPEG/yDRG9A4lM4u+9tXLSxCxUkDE7pF1AMx7bjx5KR1jK17 WhtaHaUWTauLUqNFuf/i1VYPRpA0A/RxsDQNnIC0= Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1j7lSG-008q14-CA; Fri, 28 Feb 2020 19:37:48 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Date: Fri, 28 Feb 2020 19:37:48 +0000 From: Marc Zyngier To: Zenghui Yu Cc: linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Lorenzo Pieralisi , Jason Cooper , Robert Richter , Thomas Gleixner , Eric Auger , James Morse , Julien Thierry , Suzuki K Poulose Subject: Re: [PATCH v4 08/20] irqchip/gic-v4.1: Plumb get/set_irqchip_state SGI callbacks In-Reply-To: <3d725ede-6631-59fb-1a10-9fb9890f3df6@huawei.com> References: <20200214145736.18550-1-maz@kernel.org> <20200214145736.18550-9-maz@kernel.org> <4b7f71f1-5e7f-e6af-f47d-7ed0d3a8739f@huawei.com> <75597af0d2373ac4d92d8162a1338cbb@kernel.org> <19a7c193f0e4b97343e822a35f0911ed@kernel.org> <3d725ede-6631-59fb-1a10-9fb9890f3df6@huawei.com> Message-ID: X-Sender: maz@kernel.org User-Agent: Roundcube Webmail/1.3.10 X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: yuzenghui@huawei.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, lorenzo.pieralisi@arm.com, jason@lakedaemon.net, rrichter@marvell.com, tglx@linutronix.de, eric.auger@redhat.com, james.morse@arm.com, julien.thierry.kdev@gmail.com, suzuki.poulose@arm.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2020-02-20 03:11, Zenghui Yu wrote: > Hi Marc, > > On 2020/2/18 23:31, Marc Zyngier wrote: >> diff --git a/drivers/irqchip/irq-gic-v3-its.c >> b/drivers/irqchip/irq-gic-v3-its.c >> index 7656b353a95f..0ed286dba827 100644 >> --- a/drivers/irqchip/irq-gic-v3-its.c >> +++ b/drivers/irqchip/irq-gic-v3-its.c >> @@ -144,7 +144,7 @@ struct event_lpi_map { >>      u16            *col_map; >>      irq_hw_number_t        lpi_base; >>      int            nr_lpis; >> -    raw_spinlock_t        vlpi_lock; >> +    raw_spinlock_t        map_lock; > > So we use map_lock to protect both LPI's and VLPI's mapping affinity of > a device, and use vpe_lock to protect vPE's affinity, OK. > >>      struct its_vm        *vm; >>      struct its_vlpi_map    *vlpi_maps; >>      int            nr_vlpis; >> @@ -240,15 +240,33 @@ static struct its_vlpi_map *get_vlpi_map(struct >> irq_data *d) >>      return NULL; >>  } >> >> -static int irq_to_cpuid(struct irq_data *d) >> +static int irq_to_cpuid_lock(struct irq_data *d, unsigned long >> *flags) >>  { >> -    struct its_device *its_dev = irq_data_get_irq_chip_data(d); >>      struct its_vlpi_map *map = get_vlpi_map(d); >> +    int cpu; >> >> -    if (map) >> -        return map->vpe->col_idx; >> +    if (map) { >> +        raw_spin_lock_irqsave(&map->vpe->vpe_lock, *flags); >> +        cpu = map->vpe->col_idx; >> +    } else { >> +        struct its_device *its_dev = irq_data_get_irq_chip_data(d); >> +        raw_spin_lock_irqsave(&its_dev->event_map.map_lock, *flags); >> +        cpu = its_dev->event_map.col_map[its_get_event_id(d)]; >> +    } >> >> -    return its_dev->event_map.col_map[its_get_event_id(d)]; >> +    return cpu; >> +} > > This helper is correct for normal LPIs and VLPIs, but wrong for per-vPE > IRQ (doorbell) and vSGIs. irq_data_get_irq_chip_data() gets confused by > both of them. Yes, I've fixed that in the current state of the tree last week. Do have a look if you can, but it seems to survive on both the model with v4.1 and my D05. [...] >> -        rdbase = per_cpu_ptr(gic_rdists->rdist, >> vpe->col_idx)->rd_base; >> +        cpu = irq_to_cpuid_lock(d, &flags); >> +        rdbase = per_cpu_ptr(gic_rdists->rdist, cpu)->rd_base; >>          gic_write_lpir(d->parent_data->hwirq, rdbase + >> GICR_INVLPIR); >>          wait_for_syncr(rdbase); >> +        irq_to_cpuid_unlock(d, flags); >>      } else { >>          its_vpe_send_cmd(vpe, its_send_inv); >>      } > > Do we really need to grab the vpe_lock for those which are belong to > the same irqchip with its_vpe_set_affinity()? The IRQ core code should > already ensure the mutual exclusion among them, wrong? I've been trying to think about that, but jet-lag keeps getting in the way. I empirically think that you are right, but I need to go and check the various code paths to be sure. Hopefully I'll have a bit more brain space next week. For sure this patch tries to do too many things at once... M. -- Jazz is not dead. It just smells funny... From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3E061C3F2D2 for ; Fri, 28 Feb 2020 19:37:56 +0000 (UTC) Received: from mm01.cs.columbia.edu (mm01.cs.columbia.edu [128.59.11.253]) by mail.kernel.org (Postfix) with ESMTP id BC507246A2 for ; Fri, 28 Feb 2020 19:37:55 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="MDC+EaNm" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org BC507246A2 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvmarm-bounces@lists.cs.columbia.edu Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 4D0D84AFB7; Fri, 28 Feb 2020 14:37:55 -0500 (EST) X-Virus-Scanned: at lists.cs.columbia.edu Authentication-Results: mm01.cs.columbia.edu (amavisd-new); dkim=softfail (fail, message has been altered) header.i=@kernel.org Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Axp+DZs8akXO; Fri, 28 Feb 2020 14:37:54 -0500 (EST) Received: from mm01.cs.columbia.edu (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 2EC014AFF0; Fri, 28 Feb 2020 14:37:54 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 617BC4AF7B for ; Fri, 28 Feb 2020 14:37:52 -0500 (EST) X-Virus-Scanned: at lists.cs.columbia.edu Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id vs+dW7NA7DyC for ; Fri, 28 Feb 2020 14:37:51 -0500 (EST) Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id 45EC64AF57 for ; Fri, 28 Feb 2020 14:37:51 -0500 (EST) Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 2B5062468E; Fri, 28 Feb 2020 19:37:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1582918670; bh=GR2XIlY7VhwIG2Z0tuLnjCZ9twVNAAlxyjR6cCpLapc=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=MDC+EaNmqCEkJ+97BWWShMEb2fNu+dKrf+uEr314pT30XDXvN51eMNGx0x1pj7zcA j6PJ/803E6x7Gg2YjNyPEG/yDRG9A4lM4u+9tXLSxCxUkDE7pF1AMx7bjx5KR1jK17 WhtaHaUWTauLUqNFuf/i1VYPRpA0A/RxsDQNnIC0= Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1j7lSG-008q14-CA; Fri, 28 Feb 2020 19:37:48 +0000 MIME-Version: 1.0 Date: Fri, 28 Feb 2020 19:37:48 +0000 From: Marc Zyngier To: Zenghui Yu Subject: Re: [PATCH v4 08/20] irqchip/gic-v4.1: Plumb get/set_irqchip_state SGI callbacks In-Reply-To: <3d725ede-6631-59fb-1a10-9fb9890f3df6@huawei.com> References: <20200214145736.18550-1-maz@kernel.org> <20200214145736.18550-9-maz@kernel.org> <4b7f71f1-5e7f-e6af-f47d-7ed0d3a8739f@huawei.com> <75597af0d2373ac4d92d8162a1338cbb@kernel.org> <19a7c193f0e4b97343e822a35f0911ed@kernel.org> <3d725ede-6631-59fb-1a10-9fb9890f3df6@huawei.com> Message-ID: X-Sender: maz@kernel.org User-Agent: Roundcube Webmail/1.3.10 X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: yuzenghui@huawei.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, lorenzo.pieralisi@arm.com, jason@lakedaemon.net, rrichter@marvell.com, tglx@linutronix.de, eric.auger@redhat.com, james.morse@arm.com, julien.thierry.kdev@gmail.com, suzuki.poulose@arm.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false Cc: Lorenzo Pieralisi , Jason Cooper , kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Robert Richter , Thomas Gleixner , kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org X-BeenThere: kvmarm@lists.cs.columbia.edu X-Mailman-Version: 2.1.14 Precedence: list List-Id: Where KVM/ARM decisions are made List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu T24gMjAyMC0wMi0yMCAwMzoxMSwgWmVuZ2h1aSBZdSB3cm90ZToKPiBIaSBNYXJjLAo+IAo+IE9u IDIwMjAvMi8xOCAyMzozMSwgTWFyYyBaeW5naWVyIHdyb3RlOgo+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9pcnFjaGlwL2lycS1naWMtdjMtaXRzLmMgCj4+IGIvZHJpdmVycy9pcnFjaGlwL2lycS1n aWMtdjMtaXRzLmMKPj4gaW5kZXggNzY1NmIzNTNhOTVmLi4wZWQyODZkYmE4MjcgMTAwNjQ0Cj4+ IC0tLSBhL2RyaXZlcnMvaXJxY2hpcC9pcnEtZ2ljLXYzLWl0cy5jCj4+ICsrKyBiL2RyaXZlcnMv aXJxY2hpcC9pcnEtZ2ljLXYzLWl0cy5jCj4+IEBAIC0xNDQsNyArMTQ0LDcgQEAgc3RydWN0IGV2 ZW50X2xwaV9tYXAgewo+PiAgwqDCoMKgwqAgdTE2wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqY29s X21hcDsKPj4gIMKgwqDCoMKgIGlycV9od19udW1iZXJfdMKgwqDCoMKgwqDCoMKgIGxwaV9iYXNl Owo+PiAgwqDCoMKgwqAgaW50wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBucl9scGlzOwo+PiAtwqDC oMKgIHJhd19zcGlubG9ja190wqDCoMKgwqDCoMKgwqAgdmxwaV9sb2NrOwo+PiArwqDCoMKgIHJh d19zcGlubG9ja190wqDCoMKgwqDCoMKgwqAgbWFwX2xvY2s7Cj4gCj4gU28gd2UgdXNlIG1hcF9s b2NrIHRvIHByb3RlY3QgYm90aCBMUEkncyBhbmQgVkxQSSdzIG1hcHBpbmcgYWZmaW5pdHkgb2YK PiBhIGRldmljZSwgYW5kIHVzZSB2cGVfbG9jayB0byBwcm90ZWN0IHZQRSdzIGFmZmluaXR5LCBP Sy4KPiAKPj4gIMKgwqDCoMKgIHN0cnVjdCBpdHNfdm3CoMKgwqDCoMKgwqDCoCAqdm07Cj4+ICDC oMKgwqDCoCBzdHJ1Y3QgaXRzX3ZscGlfbWFwwqDCoMKgICp2bHBpX21hcHM7Cj4+ICDCoMKgwqDC oCBpbnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG5yX3ZscGlzOwo+PiBAQCAtMjQwLDE1ICsyNDAs MzMgQEAgc3RhdGljIHN0cnVjdCBpdHNfdmxwaV9tYXAgKmdldF92bHBpX21hcChzdHJ1Y3QgCj4+ IGlycV9kYXRhICpkKQo+PiAgwqDCoMKgwqAgcmV0dXJuIE5VTEw7Cj4+ICDCoH0KPj4gCj4+IC1z dGF0aWMgaW50IGlycV90b19jcHVpZChzdHJ1Y3QgaXJxX2RhdGEgKmQpCj4+ICtzdGF0aWMgaW50 IGlycV90b19jcHVpZF9sb2NrKHN0cnVjdCBpcnFfZGF0YSAqZCwgdW5zaWduZWQgbG9uZyAKPj4g KmZsYWdzKQo+PiAgwqB7Cj4+IC3CoMKgwqAgc3RydWN0IGl0c19kZXZpY2UgKml0c19kZXYgPSBp cnFfZGF0YV9nZXRfaXJxX2NoaXBfZGF0YShkKTsKPj4gIMKgwqDCoMKgIHN0cnVjdCBpdHNfdmxw aV9tYXAgKm1hcCA9IGdldF92bHBpX21hcChkKTsKPj4gK8KgwqDCoCBpbnQgY3B1Owo+PiAKPj4g LcKgwqDCoCBpZiAobWFwKQo+PiAtwqDCoMKgwqDCoMKgwqAgcmV0dXJuIG1hcC0+dnBlLT5jb2xf aWR4Owo+PiArwqDCoMKgIGlmIChtYXApIHsKPj4gK8KgwqDCoMKgwqDCoMKgIHJhd19zcGluX2xv Y2tfaXJxc2F2ZSgmbWFwLT52cGUtPnZwZV9sb2NrLCAqZmxhZ3MpOwo+PiArwqDCoMKgwqDCoMKg wqAgY3B1ID0gbWFwLT52cGUtPmNvbF9pZHg7Cj4+ICvCoMKgwqAgfSBlbHNlIHsKPj4gK8KgwqDC oMKgwqDCoMKgIHN0cnVjdCBpdHNfZGV2aWNlICppdHNfZGV2ID0gaXJxX2RhdGFfZ2V0X2lycV9j aGlwX2RhdGEoZCk7Cj4+ICvCoMKgwqDCoMKgwqDCoCByYXdfc3Bpbl9sb2NrX2lycXNhdmUoJml0 c19kZXYtPmV2ZW50X21hcC5tYXBfbG9jaywgKmZsYWdzKTsKPj4gK8KgwqDCoMKgwqDCoMKgIGNw dSA9IGl0c19kZXYtPmV2ZW50X21hcC5jb2xfbWFwW2l0c19nZXRfZXZlbnRfaWQoZCldOwo+PiAr wqDCoMKgIH0KPj4gCj4+IC3CoMKgwqAgcmV0dXJuIGl0c19kZXYtPmV2ZW50X21hcC5jb2xfbWFw W2l0c19nZXRfZXZlbnRfaWQoZCldOwo+PiArwqDCoMKgIHJldHVybiBjcHU7Cj4+ICt9Cj4gCj4g VGhpcyBoZWxwZXIgaXMgY29ycmVjdCBmb3Igbm9ybWFsIExQSXMgYW5kIFZMUElzLCBidXQgd3Jv bmcgZm9yIHBlci12UEUKPiBJUlEgKGRvb3JiZWxsKSBhbmQgdlNHSXMuIGlycV9kYXRhX2dldF9p cnFfY2hpcF9kYXRhKCkgZ2V0cyBjb25mdXNlZCBieQo+IGJvdGggb2YgdGhlbS4KClllcywgSSd2 ZSBmaXhlZCB0aGF0IGluIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSB0cmVlIGxhc3Qgd2Vlay4g RG8gaGF2ZSAKYQpsb29rIGlmIHlvdSBjYW4sIGJ1dCBpdCBzZWVtcyB0byBzdXJ2aXZlIG9uIGJv dGggdGhlIG1vZGVsIHdpdGggdjQuMSBhbmQKbXkgRDA1LgoKWy4uLl0KCj4+IC3CoMKgwqDCoMKg wqDCoCByZGJhc2UgPSBwZXJfY3B1X3B0cihnaWNfcmRpc3RzLT5yZGlzdCwgCj4+IHZwZS0+Y29s X2lkeCktPnJkX2Jhc2U7Cj4+ICvCoMKgwqDCoMKgwqDCoCBjcHUgPSBpcnFfdG9fY3B1aWRfbG9j ayhkLCAmZmxhZ3MpOwo+PiArwqDCoMKgwqDCoMKgwqAgcmRiYXNlID0gcGVyX2NwdV9wdHIoZ2lj X3JkaXN0cy0+cmRpc3QsIGNwdSktPnJkX2Jhc2U7Cj4+ICDCoMKgwqDCoMKgwqDCoMKgIGdpY193 cml0ZV9scGlyKGQtPnBhcmVudF9kYXRhLT5od2lycSwgcmRiYXNlICsgCj4+IEdJQ1JfSU5WTFBJ Uik7Cj4+ICDCoMKgwqDCoMKgwqDCoMKgIHdhaXRfZm9yX3N5bmNyKHJkYmFzZSk7Cj4+ICvCoMKg wqDCoMKgwqDCoCBpcnFfdG9fY3B1aWRfdW5sb2NrKGQsIGZsYWdzKTsKPj4gIMKgwqDCoMKgIH0g ZWxzZSB7Cj4+ICDCoMKgwqDCoMKgwqDCoMKgIGl0c192cGVfc2VuZF9jbWQodnBlLCBpdHNfc2Vu ZF9pbnYpOwo+PiAgwqDCoMKgwqAgfQo+IAo+IERvIHdlIHJlYWxseSBuZWVkIHRvIGdyYWIgdGhl IHZwZV9sb2NrIGZvciB0aG9zZSB3aGljaCBhcmUgYmVsb25nIHRvCj4gdGhlIHNhbWUgaXJxY2hp cCB3aXRoIGl0c192cGVfc2V0X2FmZmluaXR5KCk/IFRoZSBJUlEgY29yZSBjb2RlIHNob3VsZAo+ IGFscmVhZHkgZW5zdXJlIHRoZSBtdXR1YWwgZXhjbHVzaW9uIGFtb25nIHRoZW0sIHdyb25nPwoK SSd2ZSBiZWVuIHRyeWluZyB0byB0aGluayBhYm91dCB0aGF0LCBidXQgamV0LWxhZyBrZWVwcyBn ZXR0aW5nIGluIHRoZSAKd2F5LgpJIGVtcGlyaWNhbGx5IHRoaW5rIHRoYXQgeW91IGFyZSByaWdo dCwgYnV0IEkgbmVlZCB0byBnbyBhbmQgY2hlY2sgdGhlIAp2YXJpb3VzCmNvZGUgcGF0aHMgdG8g YmUgc3VyZS4gSG9wZWZ1bGx5IEknbGwgaGF2ZSBhIGJpdCBtb3JlIGJyYWluIHNwYWNlIG5leHQg CndlZWsuCgpGb3Igc3VyZSB0aGlzIHBhdGNoIHRyaWVzIHRvIGRvIHRvbyBtYW55IHRoaW5ncyBh dCBvbmNlLi4uCgogICAgICAgICBNLgotLSAKSmF6eiBpcyBub3QgZGVhZC4gSXQganVzdCBzbWVs bHMgZnVubnkuLi4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18Ka3ZtYXJtIG1haWxpbmcgbGlzdAprdm1hcm1AbGlzdHMuY3MuY29sdW1iaWEuZWR1Cmh0dHBz Oi8vbGlzdHMuY3MuY29sdW1iaWEuZWR1L21haWxtYW4vbGlzdGluZm8va3ZtYXJtCg== From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BBAA9C3F2D3 for ; Fri, 28 Feb 2020 19:37:55 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 963F4246A8 for ; Fri, 28 Feb 2020 19:37:55 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="fqr6C5W+"; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="MDC+EaNm" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 963F4246A8 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:Message-ID:References:In-Reply-To:Subject:To:From: Date:MIME-Version:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=+W/4D6Oh+3ljESx/vujE7l1U6qcgeLWjgR3P6nhXlbs=; b=fqr6C5W+7oHyGuZAJLSgiCbB9 3Ct69K4Bxf0Zp1j5IJT/Fs7gV9BzXRZwZAWtjQS7OOPBQ4BXtXZmKzl/gquPhJlb4TSgoOozLhK8A OoCj/AI6dPO7th1BbnX2xZfQCPA+yqNbnRKTGkNyGeU4VLtWoMi0tfvoWBXRJOxkCDxfXngB79CeW biYGKQZHLR52XlkdsNRJETRb04VL13ZYulfV3txcJSI8V4LkwJfjvPWBeLv8xL1WgBrmKp+iLL47u J3sJc8f5Wo8d64tZsAiHk6F32lqHylAaf3TXhSysoAuWrLceXk+3B/kA/EhLmTbwVXRvc4imcaLb0 l7OJOF2iQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1j7lSN-0004hi-02; Fri, 28 Feb 2020 19:37:55 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1j7lSJ-0004hJ-Ad for linux-arm-kernel@lists.infradead.org; Fri, 28 Feb 2020 19:37:52 +0000 Received: from disco-boy.misterjones.org (disco-boy.misterjones.org [51.254.78.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 2B5062468E; Fri, 28 Feb 2020 19:37:50 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1582918670; bh=GR2XIlY7VhwIG2Z0tuLnjCZ9twVNAAlxyjR6cCpLapc=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=MDC+EaNmqCEkJ+97BWWShMEb2fNu+dKrf+uEr314pT30XDXvN51eMNGx0x1pj7zcA j6PJ/803E6x7Gg2YjNyPEG/yDRG9A4lM4u+9tXLSxCxUkDE7pF1AMx7bjx5KR1jK17 WhtaHaUWTauLUqNFuf/i1VYPRpA0A/RxsDQNnIC0= Received: from disco-boy.misterjones.org ([51.254.78.96] helo=www.loen.fr) by disco-boy.misterjones.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1j7lSG-008q14-CA; Fri, 28 Feb 2020 19:37:48 +0000 MIME-Version: 1.0 Date: Fri, 28 Feb 2020 19:37:48 +0000 From: Marc Zyngier To: Zenghui Yu Subject: Re: [PATCH v4 08/20] irqchip/gic-v4.1: Plumb get/set_irqchip_state SGI callbacks In-Reply-To: <3d725ede-6631-59fb-1a10-9fb9890f3df6@huawei.com> References: <20200214145736.18550-1-maz@kernel.org> <20200214145736.18550-9-maz@kernel.org> <4b7f71f1-5e7f-e6af-f47d-7ed0d3a8739f@huawei.com> <75597af0d2373ac4d92d8162a1338cbb@kernel.org> <19a7c193f0e4b97343e822a35f0911ed@kernel.org> <3d725ede-6631-59fb-1a10-9fb9890f3df6@huawei.com> Message-ID: X-Sender: maz@kernel.org User-Agent: Roundcube Webmail/1.3.10 X-SA-Exim-Connect-IP: 51.254.78.96 X-SA-Exim-Rcpt-To: yuzenghui@huawei.com, linux-arm-kernel@lists.infradead.org, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org, linux-kernel@vger.kernel.org, lorenzo.pieralisi@arm.com, jason@lakedaemon.net, rrichter@marvell.com, tglx@linutronix.de, eric.auger@redhat.com, james.morse@arm.com, julien.thierry.kdev@gmail.com, suzuki.poulose@arm.com X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20200228_113751_411903_3737CDEB X-CRM114-Status: GOOD ( 17.00 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lorenzo Pieralisi , Jason Cooper , kvm@vger.kernel.org, Suzuki K Poulose , linux-kernel@vger.kernel.org, Eric Auger , Robert Richter , James Morse , Julien Thierry , Thomas Gleixner , kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMjAyMC0wMi0yMCAwMzoxMSwgWmVuZ2h1aSBZdSB3cm90ZToKPiBIaSBNYXJjLAo+IAo+IE9u IDIwMjAvMi8xOCAyMzozMSwgTWFyYyBaeW5naWVyIHdyb3RlOgo+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9pcnFjaGlwL2lycS1naWMtdjMtaXRzLmMgCj4+IGIvZHJpdmVycy9pcnFjaGlwL2lycS1n aWMtdjMtaXRzLmMKPj4gaW5kZXggNzY1NmIzNTNhOTVmLi4wZWQyODZkYmE4MjcgMTAwNjQ0Cj4+ IC0tLSBhL2RyaXZlcnMvaXJxY2hpcC9pcnEtZ2ljLXYzLWl0cy5jCj4+ICsrKyBiL2RyaXZlcnMv aXJxY2hpcC9pcnEtZ2ljLXYzLWl0cy5jCj4+IEBAIC0xNDQsNyArMTQ0LDcgQEAgc3RydWN0IGV2 ZW50X2xwaV9tYXAgewo+PiAgwqDCoMKgwqAgdTE2wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAqY29s X21hcDsKPj4gIMKgwqDCoMKgIGlycV9od19udW1iZXJfdMKgwqDCoMKgwqDCoMKgIGxwaV9iYXNl Owo+PiAgwqDCoMKgwqAgaW50wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBucl9scGlzOwo+PiAtwqDC oMKgIHJhd19zcGlubG9ja190wqDCoMKgwqDCoMKgwqAgdmxwaV9sb2NrOwo+PiArwqDCoMKgIHJh d19zcGlubG9ja190wqDCoMKgwqDCoMKgwqAgbWFwX2xvY2s7Cj4gCj4gU28gd2UgdXNlIG1hcF9s b2NrIHRvIHByb3RlY3QgYm90aCBMUEkncyBhbmQgVkxQSSdzIG1hcHBpbmcgYWZmaW5pdHkgb2YK PiBhIGRldmljZSwgYW5kIHVzZSB2cGVfbG9jayB0byBwcm90ZWN0IHZQRSdzIGFmZmluaXR5LCBP Sy4KPiAKPj4gIMKgwqDCoMKgIHN0cnVjdCBpdHNfdm3CoMKgwqDCoMKgwqDCoCAqdm07Cj4+ICDC oMKgwqDCoCBzdHJ1Y3QgaXRzX3ZscGlfbWFwwqDCoMKgICp2bHBpX21hcHM7Cj4+ICDCoMKgwqDC oCBpbnTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG5yX3ZscGlzOwo+PiBAQCAtMjQwLDE1ICsyNDAs MzMgQEAgc3RhdGljIHN0cnVjdCBpdHNfdmxwaV9tYXAgKmdldF92bHBpX21hcChzdHJ1Y3QgCj4+ IGlycV9kYXRhICpkKQo+PiAgwqDCoMKgwqAgcmV0dXJuIE5VTEw7Cj4+ICDCoH0KPj4gCj4+IC1z dGF0aWMgaW50IGlycV90b19jcHVpZChzdHJ1Y3QgaXJxX2RhdGEgKmQpCj4+ICtzdGF0aWMgaW50 IGlycV90b19jcHVpZF9sb2NrKHN0cnVjdCBpcnFfZGF0YSAqZCwgdW5zaWduZWQgbG9uZyAKPj4g KmZsYWdzKQo+PiAgwqB7Cj4+IC3CoMKgwqAgc3RydWN0IGl0c19kZXZpY2UgKml0c19kZXYgPSBp cnFfZGF0YV9nZXRfaXJxX2NoaXBfZGF0YShkKTsKPj4gIMKgwqDCoMKgIHN0cnVjdCBpdHNfdmxw aV9tYXAgKm1hcCA9IGdldF92bHBpX21hcChkKTsKPj4gK8KgwqDCoCBpbnQgY3B1Owo+PiAKPj4g LcKgwqDCoCBpZiAobWFwKQo+PiAtwqDCoMKgwqDCoMKgwqAgcmV0dXJuIG1hcC0+dnBlLT5jb2xf aWR4Owo+PiArwqDCoMKgIGlmIChtYXApIHsKPj4gK8KgwqDCoMKgwqDCoMKgIHJhd19zcGluX2xv Y2tfaXJxc2F2ZSgmbWFwLT52cGUtPnZwZV9sb2NrLCAqZmxhZ3MpOwo+PiArwqDCoMKgwqDCoMKg wqAgY3B1ID0gbWFwLT52cGUtPmNvbF9pZHg7Cj4+ICvCoMKgwqAgfSBlbHNlIHsKPj4gK8KgwqDC oMKgwqDCoMKgIHN0cnVjdCBpdHNfZGV2aWNlICppdHNfZGV2ID0gaXJxX2RhdGFfZ2V0X2lycV9j aGlwX2RhdGEoZCk7Cj4+ICvCoMKgwqDCoMKgwqDCoCByYXdfc3Bpbl9sb2NrX2lycXNhdmUoJml0 c19kZXYtPmV2ZW50X21hcC5tYXBfbG9jaywgKmZsYWdzKTsKPj4gK8KgwqDCoMKgwqDCoMKgIGNw dSA9IGl0c19kZXYtPmV2ZW50X21hcC5jb2xfbWFwW2l0c19nZXRfZXZlbnRfaWQoZCldOwo+PiAr wqDCoMKgIH0KPj4gCj4+IC3CoMKgwqAgcmV0dXJuIGl0c19kZXYtPmV2ZW50X21hcC5jb2xfbWFw W2l0c19nZXRfZXZlbnRfaWQoZCldOwo+PiArwqDCoMKgIHJldHVybiBjcHU7Cj4+ICt9Cj4gCj4g VGhpcyBoZWxwZXIgaXMgY29ycmVjdCBmb3Igbm9ybWFsIExQSXMgYW5kIFZMUElzLCBidXQgd3Jv bmcgZm9yIHBlci12UEUKPiBJUlEgKGRvb3JiZWxsKSBhbmQgdlNHSXMuIGlycV9kYXRhX2dldF9p cnFfY2hpcF9kYXRhKCkgZ2V0cyBjb25mdXNlZCBieQo+IGJvdGggb2YgdGhlbS4KClllcywgSSd2 ZSBmaXhlZCB0aGF0IGluIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSB0cmVlIGxhc3Qgd2Vlay4g RG8gaGF2ZSAKYQpsb29rIGlmIHlvdSBjYW4sIGJ1dCBpdCBzZWVtcyB0byBzdXJ2aXZlIG9uIGJv dGggdGhlIG1vZGVsIHdpdGggdjQuMSBhbmQKbXkgRDA1LgoKWy4uLl0KCj4+IC3CoMKgwqDCoMKg wqDCoCByZGJhc2UgPSBwZXJfY3B1X3B0cihnaWNfcmRpc3RzLT5yZGlzdCwgCj4+IHZwZS0+Y29s X2lkeCktPnJkX2Jhc2U7Cj4+ICvCoMKgwqDCoMKgwqDCoCBjcHUgPSBpcnFfdG9fY3B1aWRfbG9j ayhkLCAmZmxhZ3MpOwo+PiArwqDCoMKgwqDCoMKgwqAgcmRiYXNlID0gcGVyX2NwdV9wdHIoZ2lj X3JkaXN0cy0+cmRpc3QsIGNwdSktPnJkX2Jhc2U7Cj4+ICDCoMKgwqDCoMKgwqDCoMKgIGdpY193 cml0ZV9scGlyKGQtPnBhcmVudF9kYXRhLT5od2lycSwgcmRiYXNlICsgCj4+IEdJQ1JfSU5WTFBJ Uik7Cj4+ICDCoMKgwqDCoMKgwqDCoMKgIHdhaXRfZm9yX3N5bmNyKHJkYmFzZSk7Cj4+ICvCoMKg wqDCoMKgwqDCoCBpcnFfdG9fY3B1aWRfdW5sb2NrKGQsIGZsYWdzKTsKPj4gIMKgwqDCoMKgIH0g ZWxzZSB7Cj4+ICDCoMKgwqDCoMKgwqDCoMKgIGl0c192cGVfc2VuZF9jbWQodnBlLCBpdHNfc2Vu ZF9pbnYpOwo+PiAgwqDCoMKgwqAgfQo+IAo+IERvIHdlIHJlYWxseSBuZWVkIHRvIGdyYWIgdGhl IHZwZV9sb2NrIGZvciB0aG9zZSB3aGljaCBhcmUgYmVsb25nIHRvCj4gdGhlIHNhbWUgaXJxY2hp cCB3aXRoIGl0c192cGVfc2V0X2FmZmluaXR5KCk/IFRoZSBJUlEgY29yZSBjb2RlIHNob3VsZAo+ IGFscmVhZHkgZW5zdXJlIHRoZSBtdXR1YWwgZXhjbHVzaW9uIGFtb25nIHRoZW0sIHdyb25nPwoK SSd2ZSBiZWVuIHRyeWluZyB0byB0aGluayBhYm91dCB0aGF0LCBidXQgamV0LWxhZyBrZWVwcyBn ZXR0aW5nIGluIHRoZSAKd2F5LgpJIGVtcGlyaWNhbGx5IHRoaW5rIHRoYXQgeW91IGFyZSByaWdo dCwgYnV0IEkgbmVlZCB0byBnbyBhbmQgY2hlY2sgdGhlIAp2YXJpb3VzCmNvZGUgcGF0aHMgdG8g YmUgc3VyZS4gSG9wZWZ1bGx5IEknbGwgaGF2ZSBhIGJpdCBtb3JlIGJyYWluIHNwYWNlIG5leHQg CndlZWsuCgpGb3Igc3VyZSB0aGlzIHBhdGNoIHRyaWVzIHRvIGRvIHRvbyBtYW55IHRoaW5ncyBh dCBvbmNlLi4uCgogICAgICAgICBNLgotLSAKSmF6eiBpcyBub3QgZGVhZC4gSXQganVzdCBzbWVs bHMgZnVubnkuLi4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMu aW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2xpbnV4LWFybS1rZXJuZWwK