• T
    x86: introduce page pool in cpa · 76ebd054
    Thomas Gleixner 提交于
    DEBUG_PAGEALLOC was not possible on 64-bit due to its early-bootup
    hardcoded reliance on PSE pages, and the unrobustness of the runtime
    splitup of large pages. The splitup ended in recursive calls to
    alloc_pages() when a page for a pte split was requested.
    
    Avoid the recursion with a preallocated page pool, which is used to
    split up large mappings and gets refilled in the return path of
    kernel_map_pages after the split has been done. The size of the page
    pool is adjusted to the available memory.
    
    This part just implements the page pool and the initialization w/o
    using it yet.
    Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
    Signed-off-by: NIngo Molnar <mingo@elte.hu>
    76ebd054
init_64.c 18.2 KB