summaryrefslogtreecommitdiffstats
path: root/arch/arm64/kvm
diff options
context:
space:
mode:
authorMarc Zyngier2018-12-20 14:07:40 +0100
committerMarc Zyngier2019-02-07 12:44:46 +0100
commit20589c8cc47dce5854c8bf1b44a9fc63d798d26d (patch)
treee2964730b98027a8a1afc7586f133a601fdaab4f /arch/arm64/kvm
parentarm/arm64: KVM: Allow a VCPU to fully reset itself (diff)
downloadkernel-qcow2-linux-20589c8cc47dce5854c8bf1b44a9fc63d798d26d.tar.gz
kernel-qcow2-linux-20589c8cc47dce5854c8bf1b44a9fc63d798d26d.tar.xz
kernel-qcow2-linux-20589c8cc47dce5854c8bf1b44a9fc63d798d26d.zip
arm/arm64: KVM: Don't panic on failure to properly reset system registers
Failing to properly reset system registers is pretty bad. But not quite as bad as bringing the whole machine down... So warn loudly, but slightly more gracefully. Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Acked-by: Christoffer Dall <christoffer.dall@arm.com>
Diffstat (limited to 'arch/arm64/kvm')
-rw-r--r--arch/arm64/kvm/sys_regs.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
index 86096774abcd..c936aa40c3f4 100644
--- a/arch/arm64/kvm/sys_regs.c
+++ b/arch/arm64/kvm/sys_regs.c
@@ -2608,7 +2608,9 @@ void kvm_reset_sys_regs(struct kvm_vcpu *vcpu)
table = get_target_table(vcpu->arch.target, true, &num);
reset_sys_reg_descs(vcpu, table, num);
- for (num = 1; num < NR_SYS_REGS; num++)
- if (__vcpu_sys_reg(vcpu, num) == 0x4242424242424242)
- panic("Didn't reset __vcpu_sys_reg(%zi)", num);
+ for (num = 1; num < NR_SYS_REGS; num++) {
+ if (WARN(__vcpu_sys_reg(vcpu, num) == 0x4242424242424242,
+ "Didn't reset __vcpu_sys_reg(%zi)\n", num))
+ break;
+ }
}