[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aa3f7570-d200-d138-2a45-798d9d051274@arm.com>
Date: Wed, 8 Nov 2017 11:52:12 +0000
From: Marc Zyngier <marc.zyngier@....com>
To: Auger Eric <eric.auger@...hat.com>,
linux-arm-kernel@...ts.infradead.org, kvmarm@...ts.cs.columbia.edu,
kvm@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Christoffer Dall <christoffer.dall@...aro.org>,
Shanker Donthineni <shankerd@...eaurora.org>,
Mark Rutland <mark.rutland@....com>,
Shameerali Kolothum Thodi
<shameerali.kolothum.thodi@...wei.com>,
Andre Przywara <Andre.Przywara@....com>,
Christoffer Dall <cdall@...aro.org>
Subject: Re: [PATCH v5 12/26] KVM: arm/arm64: GICv4: Unmap VLPI when freeing
an LPI
On 07/11/17 20:28, Auger Eric wrote:
> Hi Marc,
>
> On 27/10/2017 16:28, Marc Zyngier wrote:
>> When freeing an LPI (on a DISCARD command, for example), we need
>> to unmap the VLPI down to the physical ITS level.
>>
>> Acked-by: Christoffer Dall <cdall@...aro.org>
>> Signed-off-by: Marc Zyngier <marc.zyngier@....com>
>> ---
>> virt/kvm/arm/vgic/vgic-its.c | 6 +++++-
>> 1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c
>> index b2a678d131d0..c9b1c0967426 100644
>> --- a/virt/kvm/arm/vgic/vgic-its.c
>> +++ b/virt/kvm/arm/vgic/vgic-its.c
>> @@ -628,8 +628,12 @@ static void its_free_ite(struct kvm *kvm, struct its_ite *ite)
>> list_del(&ite->ite_list);
>>
>> /* This put matches the get in vgic_add_lpi. */
>> - if (ite->irq)
>> + if (ite->irq) {
>> + if (ite->irq->hw)
>> + WARN_ON(its_unmap_vlpi(ite->irq->host_irq));
>> +
>> vgic_put_irq(kvm, ite->irq);
> You could have put the its_unmap_vlpi() directly in vgic_put_irq which
> is meant to decr the ref/release the LPI irq.
Do you see this as an issue?
I'm trying hard to keep the GICv4 changes local to the ITS code, and not
spread it everywhere in the vgic, but I'll happily change it if you spot
something that seems wrong.
Thanks,
M.
--
Jazz is not dead. It just smells funny...
Powered by blists - more mailing lists