]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
iommu/amd: Refactor protection_domain helper functions
authorSuravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Mon, 5 Feb 2024 11:56:10 +0000 (11:56 +0000)
committerJoerg Roedel <jroedel@suse.de>
Fri, 9 Feb 2024 12:16:28 +0000 (13:16 +0100)
To removes the code to setup GCR3 table, and only handle domain
create / destroy, since GCR3 is no longer part of a domain.

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Signed-off-by: Vasant Hegde <vasant.hegde@amd.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20240205115615.6053-13-vasant.hegde@amd.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/amd/iommu.c

index 929a0e8d41d01edc191d57de7779038a04f5a8b1..e2f546926b6f5812598f7fc4c2c026d7b930c87e 100644 (file)
@@ -2176,9 +2176,6 @@ static void protection_domain_free(struct protection_domain *domain)
        if (domain->iop.pgtbl_cfg.tlb)
                free_io_pgtable_ops(&domain->iop.iop.ops);
 
-       if (domain->flags & PD_IOMMUV2_MASK)
-               free_gcr3_table(domain);
-
        if (domain->iop.root)
                free_page((unsigned long)domain->iop.root);
 
@@ -2206,15 +2203,10 @@ static int protection_domain_init_v1(struct protection_domain *domain, int mode)
        return 0;
 }
 
-static int protection_domain_init_v2(struct protection_domain *domain)
+static int protection_domain_init_v2(struct protection_domain *pdom)
 {
-       domain->flags |= PD_GIOV_MASK;
-       domain->pd_mode = PD_MODE_V2;
-
-       domain->domain.pgsize_bitmap = AMD_IOMMU_PGSIZES_V2;
-
-       if (setup_gcr3_table(domain, 1))
-               return -ENOMEM;
+       pdom->pd_mode = PD_MODE_V2;
+       pdom->domain.pgsize_bitmap = AMD_IOMMU_PGSIZES_V2;
 
        return 0;
 }