Hi, the AMD IOMMU driver had an issue for a long time where it didn't allow to map a huge-page when smaller mappings existed at that address range before. The VFIO driver even had a workaround for that behavior. These patches fix the issue and remove the workaround from the VFIO driver. Please review. Thanks, Joerg Joerg Roedel (7): iommu/amd: Collect page-table pages in freelist iommu/amd: Introduce free_sub_pt() function iommu/amd: Ignore page-mode 7 in free_sub_pt() iommu/amd: Allow downgrading page-sizes in alloc_pte() iommu/amd: Restart loop if cmpxchg64 succeeded in alloc_pte() iommu/amd: Allow to upgrade page-size vfio/type1: Remove map_try_harder() code path drivers/iommu/amd_iommu.c | 204 +++++++++++++++++++++----------- drivers/iommu/amd_iommu_types.h | 1 + drivers/vfio/vfio_iommu_type1.c | 33 +----- 3 files changed, 137 insertions(+), 101 deletions(-) -- 2.17.1