|
@@ -864,6 +864,10 @@ ENTRY(__kvm_flush_vm_context)
|
|
|
ENDPROC(__kvm_flush_vm_context)
|
|
|
|
|
|
__kvm_hyp_panic:
|
|
|
+ // Stash PAR_EL1 before corrupting it in __restore_sysregs
|
|
|
+ mrs x0, par_el1
|
|
|
+ push x0, xzr
|
|
|
+
|
|
|
// Guess the context by looking at VTTBR:
|
|
|
// If zero, then we're already a host.
|
|
|
// Otherwise restore a minimal host context before panicing.
|
|
@@ -898,7 +902,7 @@ __kvm_hyp_panic:
|
|
|
mrs x3, esr_el2
|
|
|
mrs x4, far_el2
|
|
|
mrs x5, hpfar_el2
|
|
|
- mrs x6, par_el1
|
|
|
+ pop x6, xzr // active context PAR_EL1
|
|
|
mrs x7, tpidr_el2
|
|
|
|
|
|
mov lr, #(PSR_F_BIT | PSR_I_BIT | PSR_A_BIT | PSR_D_BIT |\
|