|
@@ -51,6 +51,9 @@ extern pmd_t *page_check_address_pmd(struct page *page,
|
|
|
unsigned long address,
|
|
|
enum page_check_address_pmd_flag flag);
|
|
|
|
|
|
+#define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT)
|
|
|
+#define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER)
|
|
|
+
|
|
|
#ifdef CONFIG_TRANSPARENT_HUGEPAGE
|
|
|
#define HPAGE_PMD_SHIFT HPAGE_SHIFT
|
|
|
#define HPAGE_PMD_MASK HPAGE_MASK
|
|
@@ -102,8 +105,6 @@ extern void __split_huge_page_pmd(struct mm_struct *mm, pmd_t *pmd);
|
|
|
BUG_ON(pmd_trans_splitting(*____pmd) || \
|
|
|
pmd_trans_huge(*____pmd)); \
|
|
|
} while (0)
|
|
|
-#define HPAGE_PMD_ORDER (HPAGE_PMD_SHIFT-PAGE_SHIFT)
|
|
|
-#define HPAGE_PMD_NR (1<<HPAGE_PMD_ORDER)
|
|
|
#if HPAGE_PMD_ORDER > MAX_ORDER
|
|
|
#error "hugepages can't be allocated by the buddy allocator"
|
|
|
#endif
|
|
@@ -158,9 +159,9 @@ static inline struct page *compound_trans_head(struct page *page)
|
|
|
return page;
|
|
|
}
|
|
|
#else /* CONFIG_TRANSPARENT_HUGEPAGE */
|
|
|
-#define HPAGE_PMD_SHIFT ({ BUG(); 0; })
|
|
|
-#define HPAGE_PMD_MASK ({ BUG(); 0; })
|
|
|
-#define HPAGE_PMD_SIZE ({ BUG(); 0; })
|
|
|
+#define HPAGE_PMD_SHIFT ({ BUILD_BUG(); 0; })
|
|
|
+#define HPAGE_PMD_MASK ({ BUILD_BUG(); 0; })
|
|
|
+#define HPAGE_PMD_SIZE ({ BUILD_BUG(); 0; })
|
|
|
|
|
|
#define hpage_nr_pages(x) 1
|
|
|
|