• Linus Torvalds's avatar
    Make the hardened user-copy code depend on having a hardened allocator · 6040e576
    Linus Torvalds authored
    
    
    The kernel test robot reported a usercopy failure in the new hardened
    sanity checks, due to a page-crossing copy of the FPU state into the
    task structure.
    
    This happened because the kernel test robot was testing with SLOB, which
    doesn't actually do the required book-keeping for slab allocations, and
    as a result the hardening code didn't realize that the task struct
    allocation was one single allocation - and the sanity checks fail.
    
    Since SLOB doesn't even claim to support hardening (and you really
    shouldn't use it), the straightforward solution is to just make the
    usercopy hardening code depend on the allocator supporting it.
    
    Reported-by: default avatarkernel test robot <xiaolong.ye@intel.com>
    Cc: Kees Cook <keescook@chromium.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    6040e576