From: Eric Auger Date: Thu, 26 Oct 2017 15:23:04 +0000 (+0200) Subject: KVM: arm/arm64: vgic-its: Fix vgic_its_restore_collection_table returned value X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=f31b98b57f72dcd458eb63f795f4efe272acc2e3;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git KVM: arm/arm64: vgic-its: Fix vgic_its_restore_collection_table returned value vgic_its_restore_cte returns +1 if the collection table entry is valid and properly decoded. As a consequence, if the collection table is fully filled with valid data that are decoded without error, vgic_its_restore_collection_table() returns +1. This is wrong. Let's return 0 in that case. Fixes: ea1ad53e1e31a3 (KVM: arm64: vgic-its: Collection table save/restore) Signed-off-by: Eric Auger Signed-off-by: Christoffer Dall --- diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c index 76685f4c6261..6a715a6ec64e 100644 --- a/virt/kvm/arm/vgic/vgic-its.c +++ b/virt/kvm/arm/vgic/vgic-its.c @@ -2264,6 +2264,10 @@ static int vgic_its_restore_collection_table(struct vgic_its *its) gpa += cte_esz; read += cte_esz; } + + if (ret > 0) + return 0; + return ret; }