• Tony Luck's avatar
    mm/memblock: allocate boot time data structures from mirrored memory · a3f5bafc
    Tony Luck authored
    Try to allocate all boot time kernel data structures from mirrored
    memory.
    
    If we run out of mirrored memory print warnings, but fall back to using
    non-mirrored memory to make sure that we still boot.
    
    By number of bytes, most of what we allocate at boot time is the page
    structures.  64 bytes per 4K page on x86_64 ...  or about 1.5% of total
    system memory.  For workloads where the bulk of memory is allocated to
    applications this may represent a useful improvement to system
    availability since 1.5% of total memory might be a third of the memory
    allocated to the kernel.
    Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
    Cc: Xishi Qiu <qiuxishi@huawei.com>
    Cc: Hanjun Guo <guohanjun@huawei.com>
    Cc: Xiexiuqi <xiexiuqi@huawei.com>
    Cc: Ingo Molnar <mingo@elte.hu>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: "H. Peter Anvin" <hpa@zytor.com>
    Cc: Yinghai Lu <yinghai@kernel.org>
    Cc: Naoya Horiguchi <nao.horiguchi@gmail.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    a3f5bafc
memblock.c 46.9 KB