• Robin Murphy's avatar
    arm64: uaccess: Formalise types for access_ok() · 9085b34d
    Robin Murphy authored
    In converting __range_ok() into a static inline, I inadvertently made
    it more type-safe, but without considering the ordering of the relevant
    conversions. This leads to quite a lot of Sparse noise about the fact
    that we use __chk_user_ptr() after addr has already been converted from
    a user pointer to an unsigned long.
    
    Rather than just adding another cast for the sake of shutting Sparse up,
    it seems reasonable to rework the types to make logical sense (although
    the resulting codegen for __range_ok() remains identical). The only
    callers this affects directly are our compat traps where the inferred
    "user-pointer-ness" of a register value now warrants explicit casting.
    Signed-off-by: default avatarRobin Murphy <robin.murphy@arm.com>
    Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
    9085b34d
uaccess.h 12 KB