Before the change CONFIG_INTEL_IOMMU && !CONFIG_SWIOTLB && !CONFIG_FLATMEM
could skip `set_max_mapnr(max_low_pfn);` if iommu is not present on system.

CC: Andrew Morton <[email protected]>
CC: John Paul Adrian Glaubitz <[email protected]>
CC: [email protected]
Signed-off-by: Sergei Trofimovich <[email protected]>
---
Change since v1: fixed a typo in commit mesage.

 arch/ia64/mm/init.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/ia64/mm/init.c b/arch/ia64/mm/init.c
index 16d0d7d22657..a63585db94fe 100644
--- a/arch/ia64/mm/init.c
+++ b/arch/ia64/mm/init.c
@@ -644,13 +644,16 @@ mem_init (void)
         * _before_ any drivers that may need the PCI DMA interface are
         * initialized or bootmem has been freed.
         */
+       do {
 #ifdef CONFIG_INTEL_IOMMU
-       detect_intel_iommu();
-       if (!iommu_detected)
+               detect_intel_iommu();
+               if (iommu_detected)
+                       break;
 #endif
 #ifdef CONFIG_SWIOTLB
                swiotlb_init(1);
 #endif
+       } while (0);
 
 #ifdef CONFIG_FLATMEM
        BUG_ON(!mem_map);
-- 
2.31.1

Reply via email to