Home
last modified time | relevance | path

Searched full:vmsa (Results 1 – 25 of 26) sorted by relevance

12

/linux/arch/x86/hyperv/
H A Divm.c265 static int snp_set_vmsa(void *va, bool vmsa) in snp_set_vmsa() argument
270 * Running at VMPL0 allows the kernel to change the VMSA bit for a page in snp_set_vmsa()
277 if (vmsa) in snp_set_vmsa()
283 static void snp_cleanup_vmsa(struct sev_es_save_area *vmsa) in snp_cleanup_vmsa() argument
287 err = snp_set_vmsa(vmsa, false); in snp_cleanup_vmsa()
289 pr_err("clear VMSA page failed (%u), leaking page\n", err); in snp_cleanup_vmsa()
291 free_page((unsigned long)vmsa); in snp_cleanup_vmsa()
296 struct sev_es_save_area *vmsa = (struct sev_es_save_area *) in hv_snp_boot_ap() local
305 if (!vmsa) in hv_snp_boot_ap()
315 vmsa->gdtr.base = gdtr.address; in hv_snp_boot_ap()
[all …]
/linux/arch/x86/coco/sev/
H A Dcore.c130 * across the APs VMSA fields (TSC_SCALE and TSC_OFFSET).
706 static int vmgexit_ap_control(u64 event, struct sev_es_save_area *vmsa, u32 apic_id) in vmgexit_ap_control() argument
721 ghcb_set_rax(ghcb, vmsa->sev_features); in vmgexit_ap_control()
728 ghcb_set_sw_exit_info_2(ghcb, __pa(vmsa)); in vmgexit_ap_control()
774 * If the kernel runs at VMPL0, it can change the VMSA in snp_set_vmsa()
791 static void snp_cleanup_vmsa(struct sev_es_save_area *vmsa, int apic_id) in snp_cleanup_vmsa() argument
795 err = snp_set_vmsa(vmsa, NULL, apic_id, false); in snp_cleanup_vmsa()
797 pr_err("clear VMSA page failed (%u), leaking page\n", err); in snp_cleanup_vmsa()
799 free_page((unsigned long)vmsa); in snp_cleanup_vmsa()
901 * the VMSA tag on AP's VMSA pages as they are not being used as
[all …]
/linux/Documentation/devicetree/bindings/iommu/
H A Drenesas,ipmmu-vmsa.yaml4 $id: http://devicetree.org/schemas/iommu/renesas,ipmmu-vmsa.yaml#
7 title: Renesas VMSA-Compatible IOMMU
13 The IPMMU is an IOMMU implementation compatible with the ARM VMSA page tables.
31 - const: renesas,ipmmu-vmsa # R-Mobile APE6 or R-Car Gen2 or RZ/G1
54 - const: renesas,rcar-gen4-ipmmu-vmsa # R-Car Gen4
108 const: renesas,ipmmu-vmsa
117 const: renesas,rcar-gen4-ipmmu-vmsa
136 compatible = "renesas,ipmmu-r8a7791", "renesas,ipmmu-vmsa";
H A Dqcom,apq8064-iommu.yaml14 The MSM IOMMU is an implementation compatible with the ARM VMSA short
/linux/arch/x86/kvm/svm/
H A Dsev.c868 struct sev_es_save_area *save = svm->sev_es.vmsa; in sev_es_sync_vmsa()
874 /* Check some debug related fields before encrypting the VMSA */ in sev_es_sync_vmsa()
879 * SEV-ES will use a VMSA that is pointed to by the VMCB, not in sev_es_sync_vmsa()
880 * the traditional VMSA that is part of the VMCB. Copy the in sev_es_sync_vmsa()
881 * traditional VMSA as it has been built so far (in prep in sev_es_sync_vmsa()
953 pr_debug("Virtual Machine Save Area (VMSA):\n"); in sev_es_sync_vmsa()
962 struct sev_data_launch_update_vmsa vmsa; in __sev_launch_update_vmsa() local
971 /* Perform some pre-encryption checks against the VMSA */ in __sev_launch_update_vmsa()
978 * the VMSA memory content (i.e it will write the same memory region in __sev_launch_update_vmsa()
981 clflush_cache_range(svm->sev_es.vmsa, PAGE_SIZE); in __sev_launch_update_vmsa()
[all …]
H A Dsvm.c1655 * contents of the VMSA, and future VMCB save area updates won't be in sev_post_set_cr3()
3377 struct sev_es_save_area *vmsa = (struct sev_es_save_area *)save; in dump_vmcb() local
3380 "sev_features", vmsa->sev_features); in dump_vmcb()
3383 "pl0_ssp:", vmsa->pl0_ssp, "pl1_ssp:", vmsa->pl1_ssp); in dump_vmcb()
3385 "pl2_ssp:", vmsa->pl2_ssp, "pl3_ssp:", vmsa->pl3_ssp); in dump_vmcb()
3387 "u_cet:", vmsa->u_cet); in dump_vmcb()
3390 "rax:", vmsa->rax, "rbx:", vmsa->rbx); in dump_vmcb()
3392 "rcx:", vmsa->rcx, "rdx:", vmsa->rdx); in dump_vmcb()
3394 "rsi:", vmsa->rsi, "rdi:", vmsa->rdi); in dump_vmcb()
3396 "rbp:", vmsa->rbp, "rsp:", vmsa->rsp); in dump_vmcb()
[all …]
H A Dsvm.h227 struct sev_es_save_area *vmsa; member
248 struct mutex snp_vmsa_mutex; /* Used to handle concurrent updates of VMSA. */
873 void sev_free_decrypted_vmsa(struct kvm_vcpu *vcpu, struct vmcb_save_area *vmsa);
909 static inline void sev_free_decrypted_vmsa(struct kvm_vcpu *vcpu, struct vmcb_save_area *vmsa) {} in sev_free_decrypted_vmsa() argument
/linux/Documentation/virt/kvm/x86/
H A Damd-memory-encryption.rst96 __u64 vmsa_features; /* initial value of features field in VMSA */
105 0 for SEV virtual machines, as they do not have a VMSA.
126 might set the debug swap VMSA feature (bit 5) depending on the value of the
312 report containing the SHA-256 digest of the guest memory and VMSA passed through the KVM_SEV_LAUNCH
/linux/drivers/iommu/
H A DKconfig282 bool "Renesas VMSA-compatible IPMMU"
290 Support for the Renesas VMSA-compatible IPMMU found in the R-Mobile
H A DMakefile19 obj-$(CONFIG_IPMMU_VMSA) += ipmmu-vmsa.o
H A Dipmmu-vmsa.c3 * IOMMU API for Renesas VMSA-compatible IPMMU
424 * VMSA states in section B3.6.3 "Control of Secure or Non-secure memory in ipmmu_domain_init_context()
955 .compatible = "renesas,ipmmu-vmsa",
997 .compatible = "renesas,rcar-gen4-ipmmu-vmsa",
1151 .name = "ipmmu-vmsa",
/linux/arch/arm/boot/dts/renesas/
H A Dr8a7793.dtsi406 "renesas,ipmmu-vmsa";
416 "renesas,ipmmu-vmsa";
425 "renesas,ipmmu-vmsa";
435 "renesas,ipmmu-vmsa";
444 "renesas,ipmmu-vmsa";
454 "renesas,ipmmu-vmsa";
463 "renesas,ipmmu-vmsa";
H A Dr8a7794.dtsi360 "renesas,ipmmu-vmsa";
370 "renesas,ipmmu-vmsa";
379 "renesas,ipmmu-vmsa";
389 "renesas,ipmmu-vmsa";
398 "renesas,ipmmu-vmsa";
408 "renesas,ipmmu-vmsa";
H A Dr8a7791.dtsi431 "renesas,ipmmu-vmsa";
441 "renesas,ipmmu-vmsa";
450 "renesas,ipmmu-vmsa";
460 "renesas,ipmmu-vmsa";
469 "renesas,ipmmu-vmsa";
479 "renesas,ipmmu-vmsa";
488 "renesas,ipmmu-vmsa";
H A Dr8a7790.dtsi514 "renesas,ipmmu-vmsa";
524 "renesas,ipmmu-vmsa";
533 "renesas,ipmmu-vmsa";
543 "renesas,ipmmu-vmsa";
552 "renesas,ipmmu-vmsa";
562 "renesas,ipmmu-vmsa";
/linux/arch/arm64/boot/dts/renesas/
H A Dr8a779f0.dtsi1236 "renesas,rcar-gen4-ipmmu-vmsa";
1245 "renesas,rcar-gen4-ipmmu-vmsa";
1254 "renesas,rcar-gen4-ipmmu-vmsa";
1263 "renesas,rcar-gen4-ipmmu-vmsa";
1272 "renesas,rcar-gen4-ipmmu-vmsa";
/linux/tools/testing/selftests/kvm/x86/
H A Dsev_smoke_test.c53 /* Stash state passed via VMSA before any compiled code runs. */ in compare_xsave()
/linux/arch/x86/include/asm/
H A Dmshyperv.h60 * DEFAULT INIT GPAT and SEGMENT LIMIT value in struct VMSA
H A Dsvm.h538 * page, the aptly named VM Save Area (VMSA), that is encrypted
/linux/arch/arm64/mm/
H A Dproc.S476 * Default values for VMSA control registers. These will be adjusted
/linux/arch/arm/kernel/
H A Dhead.S115 and r3, r3, #0xf @ extract VMSA support
/linux/arch/arm/boot/compressed/
H A Dhead.S872 tst r11, #0xf @ VMSA
877 tst r11, #0xf @ VMSA
/linux/drivers/gpu/drm/msm/
H A Dmsm_iommu.c313 …n/ddi0406/c/System-Level-Architecture/Virtual-Memory-System-Architecture--VMSA-/Long-descriptor-tr… in msm_iommu_pagetable_prealloc_count()
/linux/arch/x86/virt/svm/
H A Dsev.c67 vmsa : 1, member
/linux/tools/arch/x86/kcpuid/
H A Dcpuid.csv977 0x8000001f, 0, eax, 24, vmsa_reg_protection , VMSA register protection is supported

12