Lines Matching full:vmsa
581 struct sev_es_save_area *save = svm->sev_es.vmsa; in sev_es_sync_vmsa()
583 /* Check some debug related fields before encrypting the VMSA */ in sev_es_sync_vmsa()
588 * SEV-ES will use a VMSA that is pointed to by the VMCB, not in sev_es_sync_vmsa()
589 * the traditional VMSA that is part of the VMCB. Copy the in sev_es_sync_vmsa()
590 * traditional VMSA as it has been built so far (in prep in sev_es_sync_vmsa()
628 pr_debug("Virtual Machine Save Area (VMSA):\n"); in sev_es_sync_vmsa()
637 struct sev_data_launch_update_vmsa vmsa; in __sev_launch_update_vmsa() local
646 /* Perform some pre-encryption checks against the VMSA */ in __sev_launch_update_vmsa()
653 * the VMSA memory content (i.e it will write the same memory region in __sev_launch_update_vmsa()
656 clflush_cache_range(svm->sev_es.vmsa, PAGE_SIZE); in __sev_launch_update_vmsa()
658 vmsa.reserved = 0; in __sev_launch_update_vmsa()
659 vmsa.handle = to_kvm_svm(kvm)->sev_info.handle; in __sev_launch_update_vmsa()
660 vmsa.address = __sme_pa(svm->sev_es.vmsa); in __sev_launch_update_vmsa()
661 vmsa.len = PAGE_SIZE; in __sev_launch_update_vmsa()
662 ret = sev_issue_cmd(kvm, SEV_CMD_LAUNCH_UPDATE_VMSA, &vmsa, error); in __sev_launch_update_vmsa()
1764 * Transfer VMSA and GHCB state to the destination. Nullify and in sev_migrate_from()
2398 sev_flush_encrypted_page(vcpu, svm->sev_es.vmsa); in sev_free_vcpu()
2400 __free_page(virt_to_page(svm->sev_es.vmsa)); in sev_free_vcpu()
3052 * An SEV-ES guest requires a VMSA area that is a separate from the in sev_es_init_vmcb()
3053 * VMCB page. Do not include the encryption mask on the VMSA physical in sev_es_init_vmcb()
3055 * the VMSA will be NULL if this vCPU is the destination for intrahost in sev_es_init_vmcb()
3058 if (svm->sev_es.vmsa) in sev_es_init_vmcb()
3059 svm->vmcb->control.vmsa_pa = __pa(svm->sev_es.vmsa); in sev_es_init_vmcb()