• Linus Torvalds's avatar
    mm: don't allow oversized kvmalloc() calls · 7661809d
    Linus Torvalds authored
    'kvmalloc()' is a convenience function for people who want to do a
    kmalloc() but fall back on vmalloc() if there aren't enough physically
    contiguous pages, or if the allocation is larger than what kmalloc()
    supports.
    
    However, let's make sure it doesn't get _too_ easy to do crazy things
    with it.  In particular, don't allow big allocations that could be due
    to integer overflow or underflow.  So make sure the allocation size fits
    in an 'int', to protect against trivial integer conversion issues.
    Acked-by: default avatarWilly Tarreau <w@1wt.eu>
    Cc: Kees Cook <keescook@chromium.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    7661809d
util.c 26.6 KB