summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorZenghui Yu <yuzenghui@huawei.com>2019-10-29 15:19:19 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-12-17 20:38:51 +0100
commit69d2eb21297bffd1a2ba6807ac030b42f73dce1c (patch)
tree1a9ff6ca9daf06f3bfbb72a810a99970c2806842 /arch
parent48612e9cc0a0c8c676c59f6a3ae0d9b46f7ccee7 (diff)
KVM: arm/arm64: vgic: Don't rely on the wrong pending table
commit ca185b260951d3b55108c0b95e188682d8a507b7 upstream. It's possible that two LPIs locate in the same "byte_offset" but target two different vcpus, where their pending status are indicated by two different pending tables. In such a scenario, using last_byte_offset optimization will lead KVM relying on the wrong pending table entry. Let us use last_ptr instead, which can be treated as a byte index into a pending table and also, can be vcpu specific. Fixes: 280771252c1b ("KVM: arm64: vgic-v3: KVM_DEV_ARM_VGIC_SAVE_PENDING_TABLES") Cc: stable@vger.kernel.org Signed-off-by: Zenghui Yu <yuzenghui@huawei.com> Signed-off-by: Marc Zyngier <maz@kernel.org> Acked-by: Eric Auger <eric.auger@redhat.com> Link: https://lore.kernel.org/r/20191029071919.177-4-yuzenghui@huawei.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch')
0 files changed, 0 insertions, 0 deletions