iommu/amd: Do not set the D bit on AMD v2 table entries
authorJason Gunthorpe <jgg@nvidia.com>
Fri, 30 Aug 2024 00:06:23 +0000 (21:06 -0300)
committerJoerg Roedel <jroedel@suse.de>
Wed, 4 Sep 2024 09:39:03 +0000 (11:39 +0200)
The manual says that bit 6 is IGN for all Page-Table Base Address
pointers, don't set it.

Fixes: aaac38f61487 ("iommu/amd: Initial support for AMD IOMMU v2 page table")
Reviewed-by: Vasant Hegde <vasant.hegde@amd.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/14-v2-831cdc4d00f3+1a315-amd_iopgtbl_jgg@nvidia.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/amd/io_pgtable_v2.c

index 77cc1b4a3f02258fbe01662c3126f75fadc2b3e5..25b9042fa4530791b36f6e89fbfb4c55f4b3da13 100644 (file)
@@ -51,7 +51,7 @@ static inline u64 set_pgtable_attr(u64 *page)
        u64 prot;
 
        prot = IOMMU_PAGE_PRESENT | IOMMU_PAGE_RW | IOMMU_PAGE_USER;
-       prot |= IOMMU_PAGE_ACCESS | IOMMU_PAGE_DIRTY;
+       prot |= IOMMU_PAGE_ACCESS;
 
        return (iommu_virt_to_phys(page) | prot);
 }