diff options
author | Madhukar Pappireddy <madhukar.pappireddy@arm.com> | 2020-02-26 12:37:05 -0600 |
---|---|---|
committer | Madhukar Pappireddy <madhukar.pappireddy@arm.com> | 2020-03-01 06:44:30 -0600 |
commit | 6bc243825f561e87ef7af7f51b218c6b0dab9b78 (patch) | |
tree | 15d4515c7f5fc2d3d34fae93b9fe58a1b5453e2b /bl1 | |
parent | 2403813779d983fc039bcd05cd659520bcaaf75e (diff) | |
download | arm-trusted-firmware-6bc243825f561e87ef7af7f51b218c6b0dab9b78.tar.gz |
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=f461fe346b728d0e88142fd7b8f2816415af18bc
Change-Id: I2aa3105bee0b92238f389830b3a3b8650f33af3d
Signed-off-by: Madhukar Pappireddy <madhukar.pappireddy@arm.com>
Diffstat (limited to 'bl1')
-rw-r--r-- | bl1/aarch32/bl1_exceptions.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/bl1/aarch32/bl1_exceptions.S b/bl1/aarch32/bl1_exceptions.S index f2af9ab5b..493d2ca4e 100644 --- a/bl1/aarch32/bl1_exceptions.S +++ b/bl1/aarch32/bl1_exceptions.S @@ -80,7 +80,7 @@ debug_loop: add r8, r8, #ENTRY_POINT_INFO_ARGS_OFFSET ldm r8, {r0, r1, r2, r3} - eret + exception_return endfunc bl1_aarch32_smc_handler /* ----------------------------------------------------- |