forked from Minki/linux
arm64: hyp-stub: Define a return value for failed stub calls
Define a standard return value to be returned when a hyp stub call fails, and make KVM use it for ARM_EXCEPTION_HYP_GONE (instead of using a KVM-specific value). Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <cdall@linaro.org>
This commit is contained in:
parent
9bae3ae513
commit
4993fdcf39
@ -28,7 +28,7 @@
|
||||
#define ARM_EXCEPTION_EL1_SERROR 1
|
||||
#define ARM_EXCEPTION_TRAP 2
|
||||
/* The hyp-stub will return this for any kvm_call_hyp() call */
|
||||
#define ARM_EXCEPTION_HYP_GONE 3
|
||||
#define ARM_EXCEPTION_HYP_GONE HVC_STUB_ERR
|
||||
|
||||
#define KVM_ARM64_DEBUG_DIRTY_SHIFT 0
|
||||
#define KVM_ARM64_DEBUG_DIRTY (1 << KVM_ARM64_DEBUG_DIRTY_SHIFT)
|
||||
|
@ -39,6 +39,9 @@
|
||||
*/
|
||||
#define HVC_SOFT_RESTART 2
|
||||
|
||||
/* Error returned when an invalid stub number is passed into x0 */
|
||||
#define HVC_STUB_ERR 0xbadca11
|
||||
|
||||
#define BOOT_CPU_MODE_EL1 (0xe11)
|
||||
#define BOOT_CPU_MODE_EL2 (0xe12)
|
||||
|
||||
|
@ -74,7 +74,7 @@ el1_sync:
|
||||
br x4 // no return
|
||||
|
||||
/* Someone called kvm_call_hyp() against the hyp-stub... */
|
||||
3: mov x0, #ARM_EXCEPTION_HYP_GONE
|
||||
3: ldr x0, =HVC_STUB_ERR
|
||||
|
||||
9: eret
|
||||
ENDPROC(el1_sync)
|
||||
|
Loading…
Reference in New Issue
Block a user