]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: arm64: Fix nVHE hyp panic host context restore
authorAndrew Scull <ascull@google.com>
Fri, 5 Mar 2021 18:52:49 +0000 (18:52 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 6 Mar 2021 09:18:40 +0000 (04:18 -0500)
commit7459bbe8da6a7941c70f68e96de5726ac6feb2d3
treed503cf7f29b266aa53ea89be1c261b72589da249
parent0b65f6e253e488470115d11fbb79fdf41a3189c3
KVM: arm64: Fix nVHE hyp panic host context restore

When panicking from the nVHE hyp and restoring the host context, x29 is
expected to hold a pointer to the host context. This wasn't being done
so fix it to make sure there's a valid pointer the host context being
used.

Rather than passing a boolean indicating whether or not the host context
should be restored, instead pass the pointer to the host context. NULL
is passed to indicate that no context should be restored.

Fixes: aaf8c9a9e4ee ("KVM: arm64: nVHE: Handle hyp panics")
Cc: stable@vger.kernel.org
Signed-off-by: Andrew Scull <ascull@google.com>
[maz: partial rewrite to fit 5.12-rc1]
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20210219122406.1337626-1-ascull@google.com
Message-Id: <20210305185254.3730990-4-maz@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/arm64/include/asm/kvm_hyp.h
arch/arm64/kvm/hyp/nvhe/host.S
arch/arm64/kvm/hyp/nvhe/switch.c