• R
    arm64: Make USER_DS an inclusive limit · 51369e39
    Robin Murphy 提交于
    Currently, USER_DS represents an exclusive limit while KERNEL_DS is
    inclusive. In order to do some clever trickery for speculation-safe
    masking, we need them both to behave equivalently - there aren't enough
    bits to make KERNEL_DS exclusive, so we have precisely one option. This
    also happens to correct a longstanding false negative for a range
    ending on the very top byte of kernel memory.
    
    Mark Rutland points out that we've actually got the semantics of
    addresses vs. segments muddled up in most of the places we need to
    amend, so shuffle the {USER,KERNEL}_DS definitions around such that we
    can correct those properly instead of just pasting "-1"s everywhere.
    Signed-off-by: NRobin Murphy <robin.murphy@arm.com>
    Signed-off-by: NWill Deacon <will.deacon@arm.com>
    Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
    51369e39
fault.c 22.5 KB