| /linux/arch/x86/kernel/ |
| H A D | traps.c | 1148 unsigned long dr6; in debug_read_reset_dr6() local 1150 get_debugreg(dr6, 6); in debug_read_reset_dr6() 1151 dr6 ^= DR6_RESERVED; /* Flip to positive polarity */ in debug_read_reset_dr6() 1173 return dr6; in debug_read_reset_dr6() 1201 static bool notify_debug(struct pt_regs *regs, unsigned long *dr6) in notify_debug() argument 1204 * Notifiers will clear bits in @dr6 to indicate the event has been in notify_debug() 1210 if (notify_die(DIE_DEBUG, "debug", regs, (long)dr6, 0, SIGTRAP) == NOTIFY_STOP) in notify_debug() 1216 static noinstr void exc_debug_kernel(struct pt_regs *regs, unsigned long dr6) in exc_debug_kernel() argument 1263 (dr6 & DR_STEP) && is_sysenter_singlestep(regs)) in exc_debug_kernel() 1264 dr6 in exc_debug_kernel() 1295 exc_debug_user(struct pt_regs * regs,unsigned long dr6) exc_debug_user() argument 1398 unsigned long dr6 = fred_event_data(regs); DEFINE_FREDENTRY_DEBUG() local 1411 unsigned long dr6 = debug_read_reset_dr6(); DEFINE_IDTENTRY_RAW() local [all...] |
| /linux/tools/testing/selftests/kvm/x86/ |
| H A D | debug_regs.c | 194 run->debug.arch.dr6 == target_dr6, in main() 196 "(should be 0x%llx) dr6 0x%llx (should be 0x%llx)", in main() 199 run->debug.arch.dr6, target_dr6); in main() 217 run->debug.arch.dr6 == target_dr6, in main() 219 "(should be 0x%llx) dr6 0x%llx (should be 0x%llx)", 222 run->debug.arch.dr6, target_dr6); 243 run->debug.arch.dr6 == target_dr6, 245 "(should be 0x%llx) dr6 0x%llx (should be 0x%llx)", 247 run->debug.arch.pc, target_rip, run->debug.arch.dr6, 261 run->debug.arch.dr6 [all...] |
| /linux/arch/x86/kvm/ |
| H A D | smm.c | 53 CHECK_SMRAM32_OFFSET(dr6, 0xFFCC); in check_smram_offsets() 100 CHECK_SMRAM64_OFFSET(dr6, 0xFF68); in check_smram_offsets() 198 smram->dr6 = (u32)vcpu->arch.dr6; in enter_smm_save_state_32() 240 smram->dr6 = vcpu->arch.dr6; in enter_smm_save_state_64() 477 if (kvm_set_dr(vcpu, 6, smstate->dr6)) in rsm_load_state_32() 529 if (kvm_set_dr(vcpu, 6, smstate->dr6)) in rsm_load_state_64()
|
| H A D | smm.h | 60 u32 dr6; member 131 u64 dr6; member
|
| H A D | x86.c | 772 vcpu->arch.dr6 &= ~DR_TRAP_BITS; in exception_type() 775 * dr6, three components need to be considered: active low in kvm_deliver_exception_payload() 779 * In the target guest dr6: in kvm_deliver_exception_payload() 789 vcpu->arch.dr6 |= DR6_ACTIVE_LOW; in kvm_deliver_exception_payload() 790 vcpu->arch.dr6 |= ex->payload; in kvm_deliver_exception_payload() 791 vcpu->arch.dr6 ^= ex->payload & DR6_ACTIVE_LOW; in kvm_deliver_exception_payload() 799 vcpu->arch.dr6 &= ~BIT(12); in kvm_deliver_exception_payload() 1539 vcpu->arch.dr6 = (val & DR6_VOLATILE) | kvm_dr6_fixed(vcpu); in kvm_update_dr7() 1563 return vcpu->arch.dr6; in kvm_set_dr() 5756 dbgregs->dr6 in kvm_vcpu_ioctl_x86_set_vcpu_events() 9253 u32 dr6 = 0; kvm_vcpu_check_hw_bp() local 9347 u32 dr6 = kvm_vcpu_check_hw_bp(eip, 0, kvm_vcpu_check_code_breakpoint() local 9364 u32 dr6 = kvm_vcpu_check_hw_bp(eip, 0, kvm_vcpu_check_code_breakpoint() local [all...] |
| H A D | emulate.c | 543 static int emulate_db(struct x86_emulate_ctxt *ctxt, unsigned long dr6) in emulate_db() 545 ctxt->exception.dr6 = dr6; in emulate_db() 3851 ulong dr6; check_dr_read() local
|
| /linux/tools/testing/selftests/kvm/lib/x86/ |
| H A D | svm.c | 116 asm volatile ("mov %%dr6, %0" : "=r"(save->dr6) : : "memory"); in generic_svm_setup()
|
| /linux/arch/x86/kvm/svm/ |
| H A D | nested.c | 449 if (CC(!kvm_dr6_valid(save->dr6)) || CC(!kvm_dr7_valid(save->dr7))) in nested_vmcb_check_save() 593 to->dr6 = from->dr6; in nested_sync_control_from_vmcb02() 810 svm->vcpu.arch.dr6 = svm->nested.save.dr6 | DR6_ACTIVE_LOW; in is_evtinj_soft() 1280 vmcb12->save.dr6 = svm->vcpu.arch.dr6; in nested_svm_vmexit()
|
| H A D | svm.c | 1920 if (unlikely(value != vmcb->save.dr6)) { in svm_sync_dirty_debug_regs() 1921 vmcb->save.dr6 = value; in svm_sync_dirty_debug_regs() 1938 * We cannot reset svm->vmcb->save.dr6 to DR6_ACTIVE_LOW here, in svm_set_dr7() 1941 vcpu->arch.dr6 = svm->vmcb->save.dr6; in svm_set_dr7() 2044 u32 payload = svm->vmcb->save.dr6 ^ DR6_ACTIVE_LOW; in db_interception() 2058 kvm_run->debug.arch.dr6 = svm->vmcb->save.dr6; 3529 "dr6:", save->dr6, "dr in dump_vmcb() [all...] |
| H A D | svm.h | 162 u64 dr6; 159 u64 dr6; global() member
|
| H A D | sev.c | 1018 save->dr6 = svm->vcpu.arch.dr6; in sev_es_sync_vmsa()
|
| /linux/arch/x86/include/uapi/asm/ |
| H A D | kvm.h | 294 __u64 dr6; member 379 __u64 dr6; member
|
| /linux/tools/arch/x86/include/uapi/asm/ |
| H A D | kvm.h | 294 __u64 dr6; member 379 __u64 dr6; member
|
| /linux/Documentation/arch/x86/x86_64/ |
| H A D | fred.rst | 58 transient states due to %cr2 and/or %dr6, and it is no longer needed
|
| /linux/arch/x86/kvm/vmx/ |
| H A D | vmx.c | 5415 unsigned long dr6; in handle_exception_nmi() 5500 dr6 = vmx_get_exit_qual(vcpu); in handle_exception_nmi() 5516 kvm_queue_exception_p(vcpu, DB_VECTOR, dr6); in handle_exception_nmi() 5519 kvm_run->debug.arch.dr6 = dr6 | DR6_ACTIVE_LOW; in handle_exception_nmi() 5761 vcpu->run->debug.arch.dr6 = DR6_BD | DR6_ACTIVE_LOW; in handle_dr() 5803 get_debugreg(vcpu->arch.dr6, 6); in vmx_set_dr7() 5810 * exc_debug expects dr6 to be cleared after it runs, avoid that it sees in handle_tpr_below_threshold() 5811 * a stale dr6 from the guest. 5944 * Are we supposed to inject them and update dr6 in handle_ept_violation() 5383 unsigned long dr6; handle_exception_nmi() local [all...] |
| H A D | nested.c | 4080 exit_qual = vcpu->arch.dr6; in nested_vmx_inject_exception_vmexit()
|
| /linux/arch/x86/coco/sev/ |
| H A D | core.c | 830 vmsa->dr6 = AP_INIT_DR6_DEFAULT; in wakeup_cpu_via_vmgexit()
|
| /linux/arch/x86/include/asm/ |
| H A D | kvm_host.h | 1018 unsigned long dr6; 995 unsigned long dr6; global() member
|
| /linux/Documentation/virt/kvm/ |
| H A D | api.rst | 1336 __u64 dr6;
|