Re: [PATCH v5 04/10] KVM: arm/arm64: vgic-its: Check GITS_BASER Valid bit before saving tables

From: Marc Zyngier
Date: Wed Oct 25 2017 - 05:47:52 EST


On Mon, Oct 23 2017 at 4:08:23 pm BST, Eric Auger <eric.auger@xxxxxxxxxx> wrote:
> At the moment we don't properly check the GITS_BASER<n>.Valid
> bit before saving the collection and device tables.
>
> On vgic_its_save_collection_table() we use the GITS_BASER gpa
> field whereas the Valid bit should be used.
>
> On vgic_its_save_device_tables() there is no check. This can
> cause various bugs, among which a subsequent fault when accessing
> the table in guest memory.
>
> Let's systematically check the Valid bit before doing anything.
>
> We also uniformize the code between save and restore.
>
> Signed-off-by: Eric Auger <eric.auger@xxxxxxxxxx>
> Reviewed-by: Andre Przywara <andre.przywara@xxxxxxx>
> Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>

Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>

M.
--
Jazz is not dead. It just smells funny.