Lines Matching refs:vmcb

114 	struct vmcb *ptr;
209 struct vmcb *vmcb; member
292 struct vmcb *current_vmcb;
295 struct vmcb **sev_vmcbs;
329 static inline void vmcb_mark_all_dirty(struct vmcb *vmcb) in vmcb_mark_all_dirty() argument
331 vmcb->control.clean = 0; in vmcb_mark_all_dirty()
334 static inline void vmcb_mark_all_clean(struct vmcb *vmcb) in vmcb_mark_all_clean() argument
336 vmcb->control.clean = VMCB_ALL_CLEAN_MASK in vmcb_mark_all_clean()
340 static inline void vmcb_mark_dirty(struct vmcb *vmcb, int bit) in vmcb_mark_dirty() argument
342 vmcb->control.clean &= ~(1 << bit); in vmcb_mark_dirty()
345 static inline bool vmcb_is_dirty(struct vmcb *vmcb, int bit) in vmcb_is_dirty() argument
347 return !test_bit(bit, (unsigned long *)&vmcb->control.clean); in vmcb_is_dirty()
391 struct vmcb *vmcb = svm->vmcb01.ptr; in set_dr_intercepts() local
394 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR0_READ); in set_dr_intercepts()
395 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR1_READ); in set_dr_intercepts()
396 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR2_READ); in set_dr_intercepts()
397 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR3_READ); in set_dr_intercepts()
398 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR4_READ); in set_dr_intercepts()
399 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR5_READ); in set_dr_intercepts()
400 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR6_READ); in set_dr_intercepts()
401 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR0_WRITE); in set_dr_intercepts()
402 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR1_WRITE); in set_dr_intercepts()
403 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR2_WRITE); in set_dr_intercepts()
404 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR3_WRITE); in set_dr_intercepts()
405 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR4_WRITE); in set_dr_intercepts()
406 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR5_WRITE); in set_dr_intercepts()
407 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR6_WRITE); in set_dr_intercepts()
410 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_READ); in set_dr_intercepts()
411 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_WRITE); in set_dr_intercepts()
418 struct vmcb *vmcb = svm->vmcb01.ptr; in clr_dr_intercepts() local
420 vmcb->control.intercepts[INTERCEPT_DR] = 0; in clr_dr_intercepts()
424 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_READ); in clr_dr_intercepts()
425 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_WRITE); in clr_dr_intercepts()
433 struct vmcb *vmcb = svm->vmcb01.ptr; in set_exception_intercept() local
436 vmcb_set_intercept(&vmcb->control, INTERCEPT_EXCEPTION_OFFSET + bit); in set_exception_intercept()
443 struct vmcb *vmcb = svm->vmcb01.ptr; in clr_exception_intercept() local
446 vmcb_clr_intercept(&vmcb->control, INTERCEPT_EXCEPTION_OFFSET + bit); in clr_exception_intercept()
453 struct vmcb *vmcb = svm->vmcb01.ptr; in svm_set_intercept() local
455 vmcb_set_intercept(&vmcb->control, bit); in svm_set_intercept()
462 struct vmcb *vmcb = svm->vmcb01.ptr; in svm_clr_intercept() local
464 vmcb_clr_intercept(&vmcb->control, bit); in svm_clr_intercept()
471 return vmcb_is_intercept(&svm->vmcb->control, bit); in svm_is_intercept()
479 static inline struct vmcb *get_vgif_vmcb(struct vcpu_svm *svm) in get_vgif_vmcb()
492 struct vmcb *vmcb = get_vgif_vmcb(svm); in enable_gif() local
494 if (vmcb) in enable_gif()
495 vmcb->control.int_ctl |= V_GIF_MASK; in enable_gif()
502 struct vmcb *vmcb = get_vgif_vmcb(svm); in disable_gif() local
504 if (vmcb) in disable_gif()
505 vmcb->control.int_ctl &= ~V_GIF_MASK; in disable_gif()
512 struct vmcb *vmcb = get_vgif_vmcb(svm); in gif_set() local
514 if (vmcb) in gif_set()
515 return !!(vmcb->control.int_ctl & V_GIF_MASK); in gif_set()
545 void svm_copy_lbrs(struct vmcb *to_vmcb, struct vmcb *from_vmcb);
592 u64 vmcb_gpa, struct vmcb *vmcb12, bool from_vmrun);
599 void svm_copy_vmloadsave_state(struct vmcb *to_vmcb, struct vmcb *from_vmcb);
604 svm->vmcb->control.exit_code = exit_code; in nested_svm_simple_vmexit()
605 svm->vmcb->control.exit_info_1 = 0; in nested_svm_simple_vmexit()
606 svm->vmcb->control.exit_info_2 = 0; in nested_svm_simple_vmexit()
633 void avic_init_vmcb(struct vcpu_svm *svm, struct vmcb *vmcb);