• Matt Redfearn's avatar
    MIPS: Add support for ARCH_MMAP_RND_{COMPAT_}BITS · 109c32ff
    Matt Redfearn authored
    arch_mmap_rnd() uses hard-coded limits of 16MB for the randomisation
    of mmap within 32bit processes and 256MB in 64bit processes. Since v4.4
    other arches support tuning this value in /proc/sys/vm/mmap_rnd_bits.
    Add support for this to MIPS.
    
    Set the minimum(default) number of bits randomisation for 32bit to 8 -
    which with 4k pagesize is unchanged from the current 16MB total
    randomness. The minimum(default) for 64bit is 12bits, again with 4k
    pagesize this is the same as the current 256MB.
    
    This patch is necessary for MIPS32 to pass the Android CTS tests, with
    the number of random bits set to 15.
    Signed-off-by: default avatarMatt Redfearn <matt.redfearn@imgtec.com>
    Reviewed-by: default avatarKees Cook <keescook@chromium.org>
    Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
    Cc: Daniel Cashman <dcashman@android.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: linux-mips@linux-mips.org
    Cc: kernel-hardening@lists.openwall.com
    Cc: linux-kernel@vger.kernel.org
    Patchwork: https://patchwork.linux-mips.org/patch/14617/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
    109c32ff
mmap.c 4.82 KB