Merge branch 'v3.10/topic/misc' into linux-linaro-lsk
[firefly-linux-kernel-4.4.55.git] / drivers / iommu / intel-iommu.c
index 25943a683d15ebf08054fcb4724ee3e12c90e125..6771e3c94801881520929b965a0bb897688819db 100644 (file)
@@ -917,7 +917,7 @@ static void dma_pte_free_level(struct dmar_domain *domain, int level,
 
                /* If range covers entire pagetable, free it */
                if (!(start_pfn > level_pfn ||
-                     last_pfn < level_pfn + level_size(level))) {
+                     last_pfn < level_pfn + level_size(level) - 1)) {
                        dma_clear_pte(pte);
                        domain_flush_cache(domain, pte, sizeof(*pte));
                        free_pgtable_page(level_pte);