Lines Matching refs:vmcb

107 	struct vmcb *ptr;
205 struct vmcb *vmcb; member
309 struct vmcb *current_vmcb;
312 struct vmcb **sev_vmcbs;
346 static inline void vmcb_mark_all_dirty(struct vmcb *vmcb) in vmcb_mark_all_dirty() argument
348 vmcb->control.clean = 0; in vmcb_mark_all_dirty()
351 static inline void vmcb_mark_all_clean(struct vmcb *vmcb) in vmcb_mark_all_clean() argument
353 vmcb->control.clean = VMCB_ALL_CLEAN_MASK in vmcb_mark_all_clean()
357 static inline void vmcb_mark_dirty(struct vmcb *vmcb, int bit) in vmcb_mark_dirty() argument
359 vmcb->control.clean &= ~(1 << bit); in vmcb_mark_dirty()
362 static inline bool vmcb_is_dirty(struct vmcb *vmcb, int bit) in vmcb_is_dirty() argument
364 return !test_bit(bit, (unsigned long *)&vmcb->control.clean); in vmcb_is_dirty()
408 struct vmcb *vmcb = svm->vmcb01.ptr; in set_dr_intercepts() local
411 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR0_READ); in set_dr_intercepts()
412 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR1_READ); in set_dr_intercepts()
413 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR2_READ); in set_dr_intercepts()
414 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR3_READ); in set_dr_intercepts()
415 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR4_READ); in set_dr_intercepts()
416 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR5_READ); in set_dr_intercepts()
417 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR6_READ); in set_dr_intercepts()
418 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR0_WRITE); in set_dr_intercepts()
419 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR1_WRITE); in set_dr_intercepts()
420 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR2_WRITE); in set_dr_intercepts()
421 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR3_WRITE); in set_dr_intercepts()
422 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR4_WRITE); in set_dr_intercepts()
423 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR5_WRITE); in set_dr_intercepts()
424 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR6_WRITE); in set_dr_intercepts()
427 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_READ); in set_dr_intercepts()
428 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_WRITE); in set_dr_intercepts()
435 struct vmcb *vmcb = svm->vmcb01.ptr; in clr_dr_intercepts() local
437 vmcb->control.intercepts[INTERCEPT_DR] = 0; in clr_dr_intercepts()
441 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_READ); in clr_dr_intercepts()
442 vmcb_set_intercept(&vmcb->control, INTERCEPT_DR7_WRITE); in clr_dr_intercepts()
450 struct vmcb *vmcb = svm->vmcb01.ptr; in set_exception_intercept() local
453 vmcb_set_intercept(&vmcb->control, INTERCEPT_EXCEPTION_OFFSET + bit); in set_exception_intercept()
460 struct vmcb *vmcb = svm->vmcb01.ptr; in clr_exception_intercept() local
463 vmcb_clr_intercept(&vmcb->control, INTERCEPT_EXCEPTION_OFFSET + bit); in clr_exception_intercept()
470 struct vmcb *vmcb = svm->vmcb01.ptr; in svm_set_intercept() local
472 vmcb_set_intercept(&vmcb->control, bit); in svm_set_intercept()
479 struct vmcb *vmcb = svm->vmcb01.ptr; in svm_clr_intercept() local
481 vmcb_clr_intercept(&vmcb->control, bit); in svm_clr_intercept()
488 return vmcb_is_intercept(&svm->vmcb->control, bit); in svm_is_intercept()
496 static inline struct vmcb *get_vgif_vmcb(struct vcpu_svm *svm) in get_vgif_vmcb()
509 struct vmcb *vmcb = get_vgif_vmcb(svm); in enable_gif() local
511 if (vmcb) in enable_gif()
512 vmcb->control.int_ctl |= V_GIF_MASK; in enable_gif()
519 struct vmcb *vmcb = get_vgif_vmcb(svm); in disable_gif() local
521 if (vmcb) in disable_gif()
522 vmcb->control.int_ctl &= ~V_GIF_MASK; in disable_gif()
529 struct vmcb *vmcb = get_vgif_vmcb(svm); in gif_set() local
531 if (vmcb) in gif_set()
532 return !!(vmcb->control.int_ctl & V_GIF_MASK); in gif_set()
562 void svm_copy_lbrs(struct vmcb *to_vmcb, struct vmcb *from_vmcb);
609 u64 vmcb_gpa, struct vmcb *vmcb12, bool from_vmrun);
616 void svm_copy_vmloadsave_state(struct vmcb *to_vmcb, struct vmcb *from_vmcb);
621 svm->vmcb->control.exit_code = exit_code; in nested_svm_simple_vmexit()
622 svm->vmcb->control.exit_info_1 = 0; in nested_svm_simple_vmexit()
623 svm->vmcb->control.exit_info_2 = 0; in nested_svm_simple_vmexit()
665 void avic_init_vmcb(struct vcpu_svm *svm, struct vmcb *vmcb);