From 4cf007bc655b54510f7ac964c4bef76e925e072c Mon Sep 17 00:00:00 2001 From: Will Deacon Date: Thu, 7 Jul 2022 15:49:15 +0100 Subject: [PATCH] Revert "ANDROID: KVM: arm64: Don't repaint PSCI SYSTEM_RESET to SYSTEM_OFF" This reverts commit c96767cc24f1112888d2cbe4fc2b4e453b3d6791. Bug: 233587962 Signed-off-by: Will Deacon Change-Id: I9352e7ad2a8fb088fd63d3243cea24dfcb11ca7a --- arch/arm64/kvm/hyp/nvhe/hyp-main.c | 1 - arch/arm64/kvm/hyp/nvhe/pkvm.c | 7 +++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/arch/arm64/kvm/hyp/nvhe/hyp-main.c b/arch/arm64/kvm/hyp/nvhe/hyp-main.c index 67ed255b1699..44d205ae734e 100644 --- a/arch/arm64/kvm/hyp/nvhe/hyp-main.c +++ b/arch/arm64/kvm/hyp/nvhe/hyp-main.c @@ -290,7 +290,6 @@ static void handle_pvm_exit_hvc64(struct kvm_vcpu *host_vcpu, struct kvm_vcpu *s case PSCI_0_2_FN_CPU_OFF: case PSCI_0_2_FN_SYSTEM_OFF: - case PSCI_0_2_FN_SYSTEM_RESET: case PSCI_0_2_FN_CPU_SUSPEND: case PSCI_0_2_FN64_CPU_SUSPEND: n = 1; diff --git a/arch/arm64/kvm/hyp/nvhe/pkvm.c b/arch/arm64/kvm/hyp/nvhe/pkvm.c index c431431d22af..e19af9e891f7 100644 --- a/arch/arm64/kvm/hyp/nvhe/pkvm.c +++ b/arch/arm64/kvm/hyp/nvhe/pkvm.c @@ -1017,6 +1017,13 @@ static bool pkvm_handle_psci(struct kvm_vcpu *vcpu) case PSCI_1_0_FN_PSCI_FEATURES: return pvm_psci_features(vcpu); case PSCI_0_2_FN_SYSTEM_RESET: + /* + * NOTE: Until we add proper support for reset for protected + * VMs, repaint reset requests as system off because some VMMs + * use reset when tearing down a VM. + */ + vcpu_set_reg(vcpu, 0, PSCI_0_2_FN_SYSTEM_OFF); + fallthrough; case PSCI_0_2_FN_CPU_SUSPEND: case PSCI_0_2_FN64_CPU_SUSPEND: case PSCI_0_2_FN_SYSTEM_OFF: