• Jeenu Viswambharan's avatar
    AArch64: Use SSBS for CVE_2018_3639 mitigation · 48e1d350
    Jeenu Viswambharan authored
    
    
    The Armv8.5 extensions introduces PSTATE.SSBS (Speculation Store Bypass
    Safe) bit to mitigate against Variant 4 vulnerabilities. Although an
    Armv8.5 feature, this can be implemented by CPUs implementing earlier
    version of the architecture.
    
    With this patch, when both PSTATE.SSBS is implemented and
    DYNAMIC_WORKAROUND_CVE_2018_3639 is active, querying for
    SMCCC_ARCH_WORKAROUND_2 via. SMCCC_ARCH_FEATURES call would return 1 to
    indicate that mitigation on the PE is either permanently enabled or not
    required.
    
    When SSBS is implemented, SCTLR_EL3.DSSBS is initialized to 0 at reset
    of every BL stage. This means that EL3 always executes with mitigation
    applied.
    
    For Cortex A76, if the PE implements SSBS, the existing mitigation (by
    using a different vector table, and tweaking CPU ACTLR2) is not used.
    
    Change-Id: Ib0386c5714184144d4747951751c2fc6ba4242b6
    Signed-off-by: default avatarJeenu Viswambharan <jeenu.viswambharan@arm.com>
    48e1d350
arch.h 20.6 KB