Recap discussion on the other thread.

https://lore.kernel.org/linux-mm/camkat6qorwbaxapacasm0sc9o2uq9zqzb6s1kbkvav2d4tk...@mail.gmail.com/#t

On 6/16/2022 8:55 AM, Suravee Suthikulpanit wrote:
+int amd_iommu_snp_enable(void)
+{
+       /*
+        * The SNP support requires that IOMMU must be enabled, and is
+        * not configured in the passthrough mode.
+        */
+       if (no_iommu || iommu_default_passthrough()) {
+               pr_err("SNP: IOMMU is either disabled or configured in passthrough 
mode.\n");
+               return -EINVAL;
+       }

Peter has suggested rewording to something more descriptive such as:

"SNP: IOMMU is either disabled or configured in passthrough mode, SNP cannot be 
supported".

Thank you,
Suravee

+       /*
+        * Prevent enabling SNP after IOMMU_ENABLED state because this process
+        * affect how IOMMU driver sets up data structures and configures
+        * IOMMU hardware.
+        */
+       if (init_state > IOMMU_ENABLED) {
+               pr_err("SNP: Too late to enable SNP for IOMMU.\n");
+               return -EINVAL;
+       }
+
+       amd_iommu_snp_en = amd_iommu_snp_sup;
+       if (!amd_iommu_snp_en)
+               return -EINVAL;
+
+       pr_info("SNP enabled\n");
+
+       /* Enforce IOMMU v1 pagetable when SNP is enabled. */
+       if (amd_iommu_pgtable != AMD_IOMMU_V1) {
+               pr_warn("Force to using AMD IOMMU v1 page table due to SNP\n");
+               amd_iommu_pgtable = AMD_IOMMU_V1;
+               amd_iommu_ops.pgsize_bitmap = AMD_IOMMU_PGSIZES;
+       }
+
+       return 0;
+}
+EXPORT_SYMBOL_GPL(amd_iommu_snp_enable);

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to