Skip to content
Snippets Groups Projects
Commit 0ff1abf0 authored by Andrew Murray's avatar Andrew Murray Committed by Laibin Qiu
Browse files

KVM: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE

mainline inclusion
from mainline-v5.6
commit 4942dc66
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/I5QR6C
CVE: NA

-------------

On VHE systems arch.mdcr_el2 is written to mdcr_el2 at vcpu_load time to
set options for self-hosted debug and the performance monitors
extension.

Unfortunately the value of arch.mdcr_el2 is not calculated until
kvm_arm_setup_debug() in the run loop after the vcpu has been loaded.
This means that the initial brief iterations of the run loop use a zero
value of mdcr_el2 - until the vcpu is preempted. This also results in a
delay between changes to vcpu->guest_debug taking effect.

Fix this by writing to mdcr_el2 in kvm_arm_setup_debug() on VHE systems
when a change to arch.mdcr_el2 has been detected.

Fixes: d5a21bcc ("KVM: arm64: Move common VHE/non-VHE trap config in separate functions")
Cc: <stable@vger.kernel.org> # 4.17.x-
Suggested-by: James Mors...
parent 88ca7b80
No related branches found
No related tags found
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment