Skip to content
  • Linus Torvalds's avatar
    Add 'unsafe' user access functions for batched accesses · 5b24a7a2
    Linus Torvalds authored
    
    
    The naming is meant to discourage random use: the helper functions are
    not really any more "unsafe" than the traditional double-underscore
    functions (which need the address range checking), but they do need even
    more infrastructure around them, and should not be used willy-nilly.
    
    In addition to checking the access range, these user access functions
    require that you wrap the user access with a "user_acess_{begin,end}()"
    around it.
    
    That allows architectures that implement kernel user access control
    (x86: SMAP, arm64: PAN) to do the user access control in the wrapping
    user_access_begin/end part, and then batch up the actual user space
    accesses using the new interfaces.
    
    The main (and hopefully only) use for these are for core generic access
    helpers, initially just the generic user string functions
    (strnlen_user() and strncpy_from_user()).
    
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    5b24a7a2