/linux-6.15/arch/x86/hyperv/ |
D | ivm.c | 262 static int snp_set_vmsa(void *va, bool vmsa) in snp_set_vmsa() argument 267 * Running at VMPL0 allows the kernel to change the VMSA bit for a page in snp_set_vmsa() 274 if (vmsa) in snp_set_vmsa() 280 static void snp_cleanup_vmsa(struct sev_es_save_area *vmsa) in snp_cleanup_vmsa() argument 284 err = snp_set_vmsa(vmsa, false); in snp_cleanup_vmsa() 286 pr_err("clear VMSA page failed (%u), leaking page\n", err); in snp_cleanup_vmsa() 288 free_page((unsigned long)vmsa); in snp_cleanup_vmsa() 293 struct sev_es_save_area *vmsa = (struct sev_es_save_area *) in hv_snp_boot_ap() local 301 if (!vmsa) in hv_snp_boot_ap() 306 vmsa->gdtr.base = gdtr.address; in hv_snp_boot_ap() [all …]
|
/linux-6.15/Documentation/devicetree/bindings/iommu/ |
D | renesas,ipmmu-vmsa.yaml | 4 $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";
|
D | qcom,apq8064-iommu.yaml | 14 The MSM IOMMU is an implementation compatible with the ARM VMSA short
|
/linux-6.15/arch/x86/coco/sev/ |
D | core.c | 102 * across the APs VMSA fields (TSC_SCALE and TSC_OFFSET). 962 static int vmgexit_ap_control(u64 event, struct sev_es_save_area *vmsa, u32 apic_id) in vmgexit_ap_control() argument 977 ghcb_set_rax(ghcb, vmsa->sev_features); in vmgexit_ap_control() 984 ghcb_set_sw_exit_info_2(ghcb, __pa(vmsa)); in vmgexit_ap_control() 1030 * If the kernel runs at VMPL0, it can change the VMSA in snp_set_vmsa() 1047 static void snp_cleanup_vmsa(struct sev_es_save_area *vmsa, int apic_id) in snp_cleanup_vmsa() argument 1051 err = snp_set_vmsa(vmsa, NULL, apic_id, false); in snp_cleanup_vmsa() 1053 pr_err("clear VMSA page failed (%u), leaking page\n", err); in snp_cleanup_vmsa() 1055 free_page((unsigned long)vmsa); in snp_cleanup_vmsa() 1157 * the VMSA tag on AP's VMSA pages as they are not being used as [all …]
|
/linux-6.15/arch/x86/kvm/svm/ |
D | sev.c | 800 struct sev_es_save_area *save = svm->sev_es.vmsa; in sev_es_sync_vmsa() 806 /* Check some debug related fields before encrypting the VMSA */ in sev_es_sync_vmsa() 811 * SEV-ES will use a VMSA that is pointed to by the VMCB, not in sev_es_sync_vmsa() 812 * the traditional VMSA that is part of the VMCB. Copy the in sev_es_sync_vmsa() 813 * traditional VMSA as it has been built so far (in prep in sev_es_sync_vmsa() 885 pr_debug("Virtual Machine Save Area (VMSA):\n"); in sev_es_sync_vmsa() 894 struct sev_data_launch_update_vmsa vmsa; in __sev_launch_update_vmsa() local 903 /* Perform some pre-encryption checks against the VMSA */ in __sev_launch_update_vmsa() 910 * the VMSA memory content (i.e it will write the same memory region in __sev_launch_update_vmsa() 913 clflush_cache_range(svm->sev_es.vmsa, PAGE_SIZE); in __sev_launch_update_vmsa() [all …]
|
D | svm.h | 217 struct sev_es_save_area *vmsa; member 238 struct mutex snp_vmsa_mutex; /* Used to handle concurrent updates of VMSA. */
|
/linux-6.15/Documentation/virt/kvm/x86/ |
D | amd-memory-encryption.rst | 96 __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-6.15/drivers/iommu/ |
D | Makefile | 15 obj-$(CONFIG_IPMMU_VMSA) += ipmmu-vmsa.o
|
D | ipmmu-vmsa.c | 3 * 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", 1150 .name = "ipmmu-vmsa",
|
D | Kconfig | 281 bool "Renesas VMSA-compatible IPMMU" 289 Support for the Renesas VMSA-compatible IPMMU found in the R-Mobile
|
/linux-6.15/arch/arm64/boot/dts/renesas/ |
D | r8a779h0.dtsi | 1744 "renesas,rcar-gen4-ipmmu-vmsa"; 1753 "renesas,rcar-gen4-ipmmu-vmsa"; 1762 "renesas,rcar-gen4-ipmmu-vmsa"; 1771 "renesas,rcar-gen4-ipmmu-vmsa"; 1780 "renesas,rcar-gen4-ipmmu-vmsa"; 1789 "renesas,rcar-gen4-ipmmu-vmsa"; 1798 "renesas,rcar-gen4-ipmmu-vmsa"; 1807 "renesas,rcar-gen4-ipmmu-vmsa"; 1816 "renesas,rcar-gen4-ipmmu-vmsa"; 1825 "renesas,rcar-gen4-ipmmu-vmsa"; [all …]
|
D | r8a779g0.dtsi | 1994 "renesas,rcar-gen4-ipmmu-vmsa"; 2003 "renesas,rcar-gen4-ipmmu-vmsa"; 2012 "renesas,rcar-gen4-ipmmu-vmsa"; 2021 "renesas,rcar-gen4-ipmmu-vmsa"; 2030 "renesas,rcar-gen4-ipmmu-vmsa"; 2039 "renesas,rcar-gen4-ipmmu-vmsa"; 2048 "renesas,rcar-gen4-ipmmu-vmsa"; 2057 "renesas,rcar-gen4-ipmmu-vmsa"; 2066 "renesas,rcar-gen4-ipmmu-vmsa"; 2075 "renesas,rcar-gen4-ipmmu-vmsa"; [all …]
|
D | r8a779a0.dtsi | 2213 "renesas,rcar-gen4-ipmmu-vmsa"; 2222 "renesas,rcar-gen4-ipmmu-vmsa"; 2231 "renesas,rcar-gen4-ipmmu-vmsa"; 2240 "renesas,rcar-gen4-ipmmu-vmsa"; 2249 "renesas,rcar-gen4-ipmmu-vmsa"; 2258 "renesas,rcar-gen4-ipmmu-vmsa"; 2267 "renesas,rcar-gen4-ipmmu-vmsa"; 2276 "renesas,rcar-gen4-ipmmu-vmsa"; 2285 "renesas,rcar-gen4-ipmmu-vmsa"; 2294 "renesas,rcar-gen4-ipmmu-vmsa"; [all …]
|
D | r8a779f0.dtsi | 1236 "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-6.15/arch/arm/boot/dts/renesas/ |
D | r8a7793.dtsi | 406 "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";
|
D | r8a7794.dtsi | 360 "renesas,ipmmu-vmsa"; 370 "renesas,ipmmu-vmsa"; 379 "renesas,ipmmu-vmsa"; 389 "renesas,ipmmu-vmsa"; 398 "renesas,ipmmu-vmsa"; 408 "renesas,ipmmu-vmsa";
|
D | r8a7791.dtsi | 431 "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";
|
D | r8a7745.dtsi | 367 "renesas,ipmmu-vmsa"; 377 "renesas,ipmmu-vmsa"; 386 "renesas,ipmmu-vmsa"; 396 "renesas,ipmmu-vmsa"; 405 "renesas,ipmmu-vmsa"; 415 "renesas,ipmmu-vmsa";
|
D | r8a7744.dtsi | 403 "renesas,ipmmu-vmsa"; 413 "renesas,ipmmu-vmsa"; 422 "renesas,ipmmu-vmsa"; 432 "renesas,ipmmu-vmsa"; 441 "renesas,ipmmu-vmsa"; 451 "renesas,ipmmu-vmsa";
|
D | r8a7743.dtsi | 403 "renesas,ipmmu-vmsa"; 413 "renesas,ipmmu-vmsa"; 422 "renesas,ipmmu-vmsa"; 432 "renesas,ipmmu-vmsa"; 441 "renesas,ipmmu-vmsa"; 451 "renesas,ipmmu-vmsa";
|
D | r8a7790.dtsi | 514 "renesas,ipmmu-vmsa"; 524 "renesas,ipmmu-vmsa"; 533 "renesas,ipmmu-vmsa"; 543 "renesas,ipmmu-vmsa"; 552 "renesas,ipmmu-vmsa"; 562 "renesas,ipmmu-vmsa";
|
D | r8a7742.dtsi | 478 "renesas,ipmmu-vmsa"; 488 "renesas,ipmmu-vmsa"; 497 "renesas,ipmmu-vmsa"; 507 "renesas,ipmmu-vmsa"; 516 "renesas,ipmmu-vmsa";
|
/linux-6.15/tools/testing/selftests/kvm/x86/ |
D | sev_smoke_test.c | 41 /* Stash state passed via VMSA before any compiled code runs. */
|
/linux-6.15/arch/x86/include/asm/ |
D | mshyperv.h | 53 * DEFAULT INIT GPAT and SEGMENT LIMIT value in struct VMSA
|
/linux-6.15/arch/arm64/mm/ |
D | proc.S | 463 * Default values for VMSA control registers. These will be adjusted
|