Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Arm Trusted Firmware
Commits
efe30cb1
Commit
efe30cb1
authored
Mar 09, 2020
by
Mark Dykes
Committed by
TrustedFirmware Code Review
Mar 09, 2020
Browse files
Merge "aarch32: stop speculative execution past exception returns" into integration
parents
091576e7
6bc24382
Changes
4
Hide whitespace changes
Inline
Side-by-side
bl1/aarch32/bl1_exceptions.S
View file @
efe30cb1
...
...
@@ -80,7 +80,7 @@ debug_loop:
add
r8
,
r8
,
#
ENTRY_POINT_INFO_ARGS_OFFSET
ldm
r8
,
{
r0
,
r1
,
r2
,
r3
}
e
ret
e
xception_return
endfunc
bl1_aarch32_smc_handler
/
*
-----------------------------------------------------
...
...
bl2/aarch32/bl2_el3_entrypoint.S
View file @
efe30cb1
...
...
@@ -87,5 +87,5 @@ func bl2_run_next_image
add
r8
,
r8
,
#
ENTRY_POINT_INFO_ARGS_OFFSET
ldm
r8
,
{
r0
,
r1
,
r2
,
r3
}
e
ret
e
xception_return
endfunc
bl2_run_next_image
include/arch/aarch32/asm_macros.S
View file @
efe30cb1
...
...
@@ -95,11 +95,24 @@
#if ARM_ARCH_MAJOR == 7 && !defined(ARMV7_SUPPORTS_VIRTUALIZATION)
/
*
*
Macro
for
mitigating
against
speculative
execution
.
*
ARMv7
cores
without
Virtualization
extension
do
not
support
the
*
eret
instruction
.
*/
.
macro
e
ret
.
macro
e
xception_return
movs
pc
,
lr
dsb
nsh
isb
.
endm
#else
/
*
*
Macro
for
mitigating
against
speculative
execution
beyond
ERET
.
*/
.
macro
exception_return
eret
dsb
nsh
isb
.
endm
#endif
...
...
include/arch/aarch32/smccc_macros.S
View file @
efe30cb1
...
...
@@ -235,7 +235,7 @@
/
*
Restore
the
rest
of
the
general
purpose
registers
*/
ldm
r0
,
{
r0
-
r12
}
e
ret
e
xception_return
.
endm
#endif /* SMCCC_MACROS_S */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment