• Suzuki K Poulose's avatar
    arm64: capabilities: Restrict KPTI detection to boot-time CPUs · d3aec8a2
    Suzuki K Poulose authored
    KPTI is treated as a system wide feature and is only detected if all
    the CPUs in the sysetm needs the defense, unless it is forced via kernel
    command line. This leaves a system with a mix of CPUs with and without
    the defense vulnerable. Also, if a late CPU needs KPTI but KPTI was not
    activated at boot time, the CPU is currently allowed to boot, which is a
    potential security vulnerability.
    This patch ensures that the KPTI is turned on if at least one CPU detects
    the capability (i.e, change scope to SCOPE_LOCAL_CPU). Also rejetcs a late
    CPU, if it requires the defense, when the system hasn't enabled it,
    
    Cc: Will Deacon <will.deacon@arm.com>
    Reviewed-by: default avatarDave Martin <dave.martin@arm.com>
    Signed-off-by: default avatarSuzuki K Poulose <suzuki.poulose@arm.com>
    Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
    d3aec8a2
cpufeature.h 16.4 KB