/linux-6.14.4/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.14.4/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.14.4/arch/x86/coco/sev/ |
D | core.c | 102 * across the APs VMSA fields (TSC_SCALE and TSC_OFFSET). 1121 * If the kernel runs at VMPL0, it can change the VMSA in snp_set_vmsa() 1150 * Allocate VMSA page to work around the SNP erratum where the CPU will in snp_alloc_vmsa_page() 1152 * collides with the RMP entry of VMSA page. The recommended workaround in snp_alloc_vmsa_page() 1169 static void snp_cleanup_vmsa(struct sev_es_save_area *vmsa, int apic_id) in snp_cleanup_vmsa() argument 1173 err = snp_set_vmsa(vmsa, NULL, apic_id, false); in snp_cleanup_vmsa() 1175 pr_err("clear VMSA page failed (%u), leaking page\n", err); in snp_cleanup_vmsa() 1177 free_page((unsigned long)vmsa); in snp_cleanup_vmsa() 1182 struct sev_es_save_area *cur_vmsa, *vmsa; in wakeup_cpu_via_vmgexit() local 1221 * A new VMSA is created each time because there is no guarantee that in wakeup_cpu_via_vmgexit() [all …]
|
/linux-6.14.4/arch/x86/kvm/svm/ |
D | sev.c | 806 struct sev_es_save_area *save = svm->sev_es.vmsa; in sev_es_sync_vmsa() 812 /* Check some debug related fields before encrypting the VMSA */ in sev_es_sync_vmsa() 817 * SEV-ES will use a VMSA that is pointed to by the VMCB, not in sev_es_sync_vmsa() 818 * the traditional VMSA that is part of the VMCB. Copy the in sev_es_sync_vmsa() 819 * traditional VMSA as it has been built so far (in prep in sev_es_sync_vmsa() 891 pr_debug("Virtual Machine Save Area (VMSA):\n"); in sev_es_sync_vmsa() 900 struct sev_data_launch_update_vmsa vmsa; in __sev_launch_update_vmsa() local 909 /* Perform some pre-encryption checks against the VMSA */ in __sev_launch_update_vmsa() 916 * the VMSA memory content (i.e it will write the same memory region in __sev_launch_update_vmsa() 919 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.14.4/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.14.4/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", 1157 .name = "ipmmu-vmsa",
|
D | Kconfig | 282 bool "Renesas VMSA-compatible IPMMU" 290 Support for the Renesas VMSA-compatible IPMMU found in the R-Mobile
|
/linux-6.14.4/arch/arm64/boot/dts/renesas/ |
D | r8a779h0.dtsi | 1743 "renesas,rcar-gen4-ipmmu-vmsa"; 1752 "renesas,rcar-gen4-ipmmu-vmsa"; 1761 "renesas,rcar-gen4-ipmmu-vmsa"; 1770 "renesas,rcar-gen4-ipmmu-vmsa"; 1779 "renesas,rcar-gen4-ipmmu-vmsa"; 1788 "renesas,rcar-gen4-ipmmu-vmsa"; 1797 "renesas,rcar-gen4-ipmmu-vmsa"; 1806 "renesas,rcar-gen4-ipmmu-vmsa"; 1815 "renesas,rcar-gen4-ipmmu-vmsa"; 1824 "renesas,rcar-gen4-ipmmu-vmsa"; [all …]
|
D | r8a779g0.dtsi | 1987 "renesas,rcar-gen4-ipmmu-vmsa"; 1996 "renesas,rcar-gen4-ipmmu-vmsa"; 2005 "renesas,rcar-gen4-ipmmu-vmsa"; 2014 "renesas,rcar-gen4-ipmmu-vmsa"; 2023 "renesas,rcar-gen4-ipmmu-vmsa"; 2032 "renesas,rcar-gen4-ipmmu-vmsa"; 2041 "renesas,rcar-gen4-ipmmu-vmsa"; 2050 "renesas,rcar-gen4-ipmmu-vmsa"; 2059 "renesas,rcar-gen4-ipmmu-vmsa"; 2068 "renesas,rcar-gen4-ipmmu-vmsa"; [all …]
|
D | r8a779a0.dtsi | 2206 "renesas,rcar-gen4-ipmmu-vmsa"; 2215 "renesas,rcar-gen4-ipmmu-vmsa"; 2224 "renesas,rcar-gen4-ipmmu-vmsa"; 2233 "renesas,rcar-gen4-ipmmu-vmsa"; 2242 "renesas,rcar-gen4-ipmmu-vmsa"; 2251 "renesas,rcar-gen4-ipmmu-vmsa"; 2260 "renesas,rcar-gen4-ipmmu-vmsa"; 2269 "renesas,rcar-gen4-ipmmu-vmsa"; 2278 "renesas,rcar-gen4-ipmmu-vmsa"; 2287 "renesas,rcar-gen4-ipmmu-vmsa"; [all …]
|
D | r8a779f0.dtsi | 1226 "renesas,rcar-gen4-ipmmu-vmsa"; 1235 "renesas,rcar-gen4-ipmmu-vmsa"; 1244 "renesas,rcar-gen4-ipmmu-vmsa"; 1253 "renesas,rcar-gen4-ipmmu-vmsa"; 1262 "renesas,rcar-gen4-ipmmu-vmsa";
|
/linux-6.14.4/arch/arm/boot/dts/renesas/ |
D | r8a7793.dtsi | 401 "renesas,ipmmu-vmsa"; 411 "renesas,ipmmu-vmsa"; 420 "renesas,ipmmu-vmsa"; 430 "renesas,ipmmu-vmsa"; 439 "renesas,ipmmu-vmsa"; 449 "renesas,ipmmu-vmsa"; 458 "renesas,ipmmu-vmsa";
|
D | r8a7794.dtsi | 355 "renesas,ipmmu-vmsa"; 365 "renesas,ipmmu-vmsa"; 374 "renesas,ipmmu-vmsa"; 384 "renesas,ipmmu-vmsa"; 393 "renesas,ipmmu-vmsa"; 403 "renesas,ipmmu-vmsa";
|
D | r8a7791.dtsi | 426 "renesas,ipmmu-vmsa"; 436 "renesas,ipmmu-vmsa"; 445 "renesas,ipmmu-vmsa"; 455 "renesas,ipmmu-vmsa"; 464 "renesas,ipmmu-vmsa"; 474 "renesas,ipmmu-vmsa"; 483 "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 | 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 | 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 | r8a7790.dtsi | 509 "renesas,ipmmu-vmsa"; 519 "renesas,ipmmu-vmsa"; 528 "renesas,ipmmu-vmsa"; 538 "renesas,ipmmu-vmsa"; 547 "renesas,ipmmu-vmsa"; 557 "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.14.4/tools/testing/selftests/kvm/x86/ |
D | sev_smoke_test.c | 41 /* Stash state passed via VMSA before any compiled code runs. */
|
/linux-6.14.4/arch/x86/include/asm/ |
D | mshyperv.h | 55 * DEFAULT INIT GPAT and SEGMENT LIMIT value in struct VMSA
|
/linux-6.14.4/arch/arm64/mm/ |
D | proc.S | 463 * Default values for VMSA control registers. These will be adjusted
|