lkml.org 
[lkml]   [2012]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 1/2] thp: add HPAGE_PMD_* definitions for !CONFIG_TRANSPARENT_HUGEPAGE
    Date
    These macros will be used in later patch, where all usage are expected
    to be optimized away without #ifdef CONFIG_TRANSPARENT_HUGEPAGE.
    But to detect unexpected usages, we convert existing BUG() to BUILD_BUG().

    Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
    ---
    include/linux/huge_mm.h | 11 ++++++-----
    1 files changed, 6 insertions(+), 5 deletions(-)
    diff --git linux-next-20120228.orig/include/linux/huge_mm.h linux-next-20120228/include/linux/huge_mm.h
    index f56cacb..c8af7a2 100644
    --- linux-next-20120228.orig/include/linux/huge_mm.h
    +++ linux-next-20120228/include/linux/huge_mm.h
    @@ -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

    --
    1.7.7.6


    \
     
     \ /
      Last update: 2012-03-02 01:35    [from the cache]
    ©2003-2014 Jasper Spaans. hosted at Digital Ocean