[PATCH v4 0/5] Some fixes about vgic-its
Oliver Upton
oliver.upton at linux.dev
Mon Nov 11 12:40:03 PST 2024
On Thu, 7 Nov 2024 13:41:32 -0800, Jing Zhang wrote:
> This patch series addresses a critical issue in the VGIC ITS tables'
> save/restore mechanism, accompanied by a comprehensive selftest for bug
> reproduction and verification.
>
> The fix is originally from Kunkun Jiang at [1].
>
> The identified bug manifests as a failure in VM suspend/resume operations.
> The root cause lies in the repeated suspend attempts often required for
> successful VM suspension, coupled with concurrent device interrupt registration
> and freeing. This concurrency leads to inconsistencies in ITS mappings before
> the save operation, potentially leaving orphaned Device Translation Entries
> (DTEs) and Interrupt Translation Entries (ITEs) in the respective tables.
>
> [...]
Taking the immediate fixes for now, selftest might need a bit more work
(will review soon). Note that I squashed patch 2 + 3 together as well.
Applied to kvmarm/next, thanks!
[3/5] KVM: arm64: vgic-its: Add a data length check in vgic_its_save_*
https://git.kernel.org/kvmarm/kvmarm/c/7fe28d7e68f9
[4/5] KVM: arm64: vgic-its: Clear DTE when MAPD unmaps a device
https://git.kernel.org/kvmarm/kvmarm/c/e9649129d33d
[5/5] KVM: arm64: vgic-its: Clear ITE when DISCARD frees an ITE
https://git.kernel.org/kvmarm/kvmarm/c/7602ffd1d5e8
--
Best,
Oliver
More information about the linux-arm-kernel
mailing list