Lines Matching full:guest
3 * Debug and Guest Debug support
29 * For some debug operations we need to tweak some guest registers. As
33 * Guest access to MDSCR_EL1 is trapped by the hypervisor and handled
37 * guest entry. Preserve PSTATE.SS so we can restore the original value
100 * to disable guest access to the profiling and trace buffers in kvm_arm_setup_mdcr_el2()
117 * - Userspace is using the hardware to debug the guest in kvm_arm_setup_mdcr_el2()
119 * - The guest is not using debug (DEBUG_DIRTY clear). in kvm_arm_setup_mdcr_el2()
120 * - The guest has enabled the OS Lock (debug exceptions are blocked). in kvm_arm_setup_mdcr_el2()
162 * Additionally, KVM only traps guest accesses to the debug registers if
163 * the guest is not actively using them (see the DEBUG_DIRTY
164 * flag on vcpu->arch.iflags). Since the guest must not interfere
165 * with the hardware state when debugging the guest, we must ensure that
166 * trapping is enabled whenever we are debugging the guest using the
180 /* Save guest debug state */ in kvm_arm_setup_debug()
188 * the guest's MDSCR_EL1.SS and PSTATE.SS. Once the in kvm_arm_setup_debug()
192 * If the guest attempts to single step its userspace in kvm_arm_setup_debug()
194 * while in the guest kernel. Because this would be in kvm_arm_setup_debug()
195 * hard to unwind we suppress the guest's ability to in kvm_arm_setup_debug()
198 * This confuses guest debuggers which use in kvm_arm_setup_debug()
205 * If the software step state at the last guest exit in kvm_arm_setup_debug()
254 * enabled. If the guest has enabled the OS Lock, constrain its in kvm_arm_setup_debug()
255 * effects to the guest. Emulate the behavior by clearing in kvm_arm_setup_debug()
257 * exceptions are unaffected by guest configuration of the OS in kvm_arm_setup_debug()
286 * Restore the guest's debug registers if we were using them. in kvm_arm_clear_debug()
302 * debug_ptr to the guest debug state. in kvm_arm_clear_debug()