Lines Matching full:save

61 	struct vmcb_save_area *save = &vmcb->save;  in generic_svm_setup()  local
75 vmcb_set_seg(&save->es, get_es(), 0, -1U, data_seg_attr); in generic_svm_setup()
76 vmcb_set_seg(&save->cs, get_cs(), 0, -1U, code_seg_attr); in generic_svm_setup()
77 vmcb_set_seg(&save->ss, get_ss(), 0, -1U, data_seg_attr); in generic_svm_setup()
78 vmcb_set_seg(&save->ds, get_ds(), 0, -1U, data_seg_attr); in generic_svm_setup()
79 vmcb_set_seg(&save->gdtr, 0, get_gdt().address, get_gdt().size, 0); in generic_svm_setup()
80 vmcb_set_seg(&save->idtr, 0, get_idt().address, get_idt().size, 0); in generic_svm_setup()
83 save->cpl = 0; in generic_svm_setup()
84 save->efer = rdmsr(MSR_EFER); in generic_svm_setup()
85 asm volatile ("mov %%cr4, %0" : "=r"(save->cr4) : : "memory"); in generic_svm_setup()
86 asm volatile ("mov %%cr3, %0" : "=r"(save->cr3) : : "memory"); in generic_svm_setup()
87 asm volatile ("mov %%cr0, %0" : "=r"(save->cr0) : : "memory"); in generic_svm_setup()
88 asm volatile ("mov %%dr7, %0" : "=r"(save->dr7) : : "memory"); in generic_svm_setup()
89 asm volatile ("mov %%dr6, %0" : "=r"(save->dr6) : : "memory"); in generic_svm_setup()
90 asm volatile ("mov %%cr2, %0" : "=r"(save->cr2) : : "memory"); in generic_svm_setup()
91 save->g_pat = rdmsr(MSR_IA32_CR_PAT); in generic_svm_setup()
92 save->dbgctl = rdmsr(MSR_IA32_DEBUGCTLMSR); in generic_svm_setup()
96 vmcb->save.rip = (u64)guest_rip; in generic_svm_setup()
97 vmcb->save.rsp = (u64)guest_rsp; in generic_svm_setup()
102 * save/restore 64-bit general registers except rax, rip, rsp