[PATCH v2] KVM: arm/arm64: GICv4: Do not perform a map to a mapped vLPI
Kunkun Jiang
jiangkunkun at huawei.com
Mon Nov 20 05:19:41 PST 2023
Hi Marc,Oliver,
On 2023/11/20 17:15, Marc Zyngier wrote:
> On 2023-11-19 10:49, Kunkun Jiang wrote:
>> Before performing a map, let's check whether the vLPI has been
>> mapped. This corresponds to checking whether a vLPI is valid
>> before unmap it.
>
> I don't understand this last sentence. Mapping and unmapping
> are two different actions, and we shouldn't conflate them.
>
>>
>> Fixes: 196b136498b3 ("KVM: arm/arm64: GICv4: Wire mapping/unmapping of
>> VLPIs in VFIO irq bypass")
>> Signed-off-by: Kunkun Jiang <jiangkunkun at huawei.com>
>> ---
>> arch/arm64/kvm/vgic/vgic-v4.c | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/arch/arm64/kvm/vgic/vgic-v4.c
>> b/arch/arm64/kvm/vgic/vgic-v4.c
>> index 339a55194b2c..fb60bbb94460 100644
>> --- a/arch/arm64/kvm/vgic/vgic-v4.c
>> +++ b/arch/arm64/kvm/vgic/vgic-v4.c
>> @@ -436,6 +436,11 @@ int kvm_vgic_v4_set_forwarding(struct kvm *kvm,
>> int virq,
>> if (ret)
>> goto out;
>>
>> + if (irq->hw) {
>> + ret = 0;
>
> ret is obviously already 0.
>
>> + goto out;
>> + }
>> +
>> /*
>> * Emit the mapping request. If it fails, the ITS probably
>> * isn't v4 compatible, so let's silently bail out. Holding
>
> Furthermore, this really deserves a comment. Something like:
>
> /* Silently exit if the vLPI is already mapped */
>
> With these changes:
>
> Acked-by: Marc Zyngier <maz at kernel.org>
>
> Oliver, can you please apply these changes and queue it as a fix
> for 6.7?
>
Thank you for your careful review. I just sent the v3 and applied
these changes.
https://lore.kernel.org/kvmarm/20231120131210.2039-1-jiangkunkun@huawei.com/
Thanks,
Kunkun Jiang
> Thanks,
>
> M.
More information about the linux-arm-kernel
mailing list