ARM: 9200/1: spectre-bhb: avoid cross-subsection jump using a numbered label

In order to minimize potential confusion regarding numbered labels
appearing in a different order in the assembler output due to the use of
subsections, use a named local label to jump back into the vector
handler code from the associated loop8 mitigation sequence.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
This commit is contained in:
Ard Biesheuvel 2022-04-20 10:02:43 +01:00 committed by Russell King (Oracle)
parent 892c608a7d
commit 1290c70d72
1 changed files with 3 additions and 2 deletions

View File

@ -1094,7 +1094,8 @@ vector_\name:
stmia sp, {r0, lr} @ save r0, lr
@ Save spsr_<exception> (parent CPSR)
2: mrs lr, spsr
.Lvec_\name:
mrs lr, spsr
str lr, [sp, #8] @ save spsr
@
@ -1134,7 +1135,7 @@ vector_bhb_loop8_\name:
dsb nsh
@ isb not needed due to "movs pc, lr" in the vector stub
@ which gives a "context synchronisation".
b 2b
b .Lvec_\name
ENDPROC(vector_bhb_loop8_\name)
.previous
#endif