• mike.travis@hpe.com's avatar
    x86/platform/UV: Add adjustable set memory block size function · f642fb58
    mike.travis@hpe.com authored
    Add a new function to "adjust" the current fixed UV memory block size
    of 2GB so it can be changed to a different physical boundary.  This is
    out of necessity so arch dependent code can accommodate specific BIOS
    requirements which can align these new PMEM modules at less than the
    default boundaries.
    
    A "set order" type of function was used to insure that the memory block
    size will be a power of two value without requiring a validity check.
    64GB was chosen as the upper limit for memory block size values to
    accommodate upcoming 4PB systems which have 6 more bits of physical
    address space (46 becoming 52).
    Signed-off-by: default avatarMike Travis <mike.travis@hpe.com>
    Reviewed-by: default avatarAndrew Banman <andrew.banman@hpe.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Dimitri Sivanich <dimitri.sivanich@hpe.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Russ Anderson <russ.anderson@hpe.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: dan.j.williams@intel.com
    Cc: jgross@suse.com
    Cc: kirill.shutemov@linux.intel.com
    Cc: mhocko@suse.com
    Cc: stable@vger.kernel.org
    Link: https://lkml.kernel.org/lkml/20180524201711.609546602@stormcage.americas.sgi.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
    f642fb58
init_64.c 38.7 KB