aarch32: stop speculative execution past exception returns
aarch32 CPUs speculatively execute instructions following a
ERET as if it was not a jump instruction. This could lead to
cache-based side channel vulnerabilities. The software fix is
to place barrier instructions following ERET.

The counterpart patch for aarch64 is merged:
https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/commit/?id=f461fe3

Change-Id: I2aa3105bee0b92238f389830b3a3b8650f33af3d
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
1 parent 2403813 commit 6bc243825f561e87ef7af7f51b218c6b0dab9b78
@Madhukar Pappireddy Madhukar Pappireddy authored on 26 Feb 2020
Showing 4 changed files
View
bl1/aarch32/bl1_exceptions.S
View
bl2/aarch32/bl2_el3_entrypoint.S
View
include/arch/aarch32/asm_macros.S
View
include/arch/aarch32/smccc_macros.S