linux/arch/arm64/kvm
Andrew Scull c4b000c392 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: a2e102e20f ("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>
2021-03-06 04:18:40 -05:00
..
hyp KVM: arm64: Fix nVHE hyp panic host context restore 2021-03-06 04:18:40 -05:00
vgic KVM/arm64 fixes for 5.11, take #1 2021-01-08 05:02:40 -05:00
arch_timer.c KVM: arm64: arch_timer: Remove VGIC initialization check 2020-12-23 16:43:12 +00:00
arm.c Merge branch 'kvm-arm64/hyp-reloc' into kvmarm-master/next 2021-02-12 14:08:18 +00:00
debug.c KVM: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE 2020-01-22 18:38:04 +00:00
fpsimd.c KVM: arm64: Make struct kvm_regs userspace-only 2020-07-07 09:28:38 +01:00
guest.c KVM: arm64: Drop kvm_coproc.h 2020-11-10 11:22:52 +00:00
handle_exit.c KVM: arm64: Drop kvm_coproc.h 2020-11-10 11:22:52 +00:00
hypercalls.c KVM: arm64: Implement the TRNG hypervisor call 2021-01-25 22:19:31 +00:00
inject_fault.c KVM: arm64: Move AArch32 exceptions over to AArch64 sysregs 2020-11-10 11:22:51 +00:00
irq.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 2019-06-05 17:37:15 +02:00
Kconfig KVM: arm64: Replace KVM_ARM_PMU with HW_PERF_EVENTS 2021-01-04 16:50:16 +00:00
Makefile KVM: arm64: Implement the TRNG hypervisor call 2021-01-25 22:19:31 +00:00
mmio.c KVM: arm64: Make kvm_skip_instr() and co private to HYP 2020-11-10 08:34:24 +00:00
mmu.c KVM: arm64: Mark the page dirty only if the fault is handled successfully 2021-01-25 16:30:20 +00:00
perf.c KVM: arm64: Move virt/kvm/arm to arch/arm64 2020-05-16 15:03:59 +01:00
pmu-emul.c Merge branch 'kvm-arm64/pmu-debug-fixes-5.11' into kvmarm-master/next 2021-02-12 14:08:41 +00:00
pmu.c kvm: arm64: Set up hyp percpu data for nVHE 2020-09-30 08:37:14 +01:00
psci.c KVM: arm64: Convert ARCH_WORKAROUND_2 to arm64_get_spectre_v4_state() 2020-09-29 16:08:17 +01:00
pvtime.c KVM: arm64: Use kvm_write_guest_lock when init stolen time 2020-12-03 19:02:18 +00:00
reset.c Merge branch 'kvm-arm64/misc-5.11' into kvmarm-master/next 2020-11-27 19:48:24 +00:00
sys_regs.c Merge branch 'kvm-arm64/pmu-debug-fixes-5.11' into kvmarm-master/next 2021-02-12 14:08:41 +00:00
sys_regs.h Merge branch 'kvm-arm64/copro-no-more' into kvmarm-master/next 2020-11-27 11:33:16 +00:00
trace_arm.h KVM: arm64: Fix address truncation in traces 2020-09-04 10:53:48 +01:00
trace_handle_exit.h KVM: arm64: Fix address truncation in traces 2020-09-04 10:53:48 +01:00
trace.h KVM: arm64: Move virt/kvm/arm to arch/arm64 2020-05-16 15:03:59 +01:00
trng.c KVM: arm64: Implement the TRNG hypervisor call 2021-01-25 22:19:31 +00:00
va_layout.c KVM: arm64: Remove patching of fn pointers in hyp 2021-01-23 14:01:00 +00:00
vgic-sys-reg-v3.c KVM: arm64: Drop is_aarch32 trap attribute 2020-11-10 11:22:52 +00:00