arm64: Unconditionally override SYM_FUNC macros
Currently we only override the SYM_FUNC macros when we need to insert BTI C into them, do this unconditionally to make it more likely that we'll notice bugs in our override. Suggested-by: Mark Rutland <mark.rutland@arm.com> Acked-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org> Acked-by: Mark Rutland <mark.rutland@arm.com> Link: https://lore.kernel.org/r/20211214152714.2380849-3-broonie@kernel.org Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
9be34be87c
commit
481ee45ce9
@ -8,10 +8,18 @@
|
||||
|
||||
#define BTI_C bti c ;
|
||||
|
||||
#else
|
||||
|
||||
#define BTI_C
|
||||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* When using in-kernel BTI we need to ensure that PCS-conformant assembly
|
||||
* functions have suitable annotations. Override SYM_FUNC_START to insert
|
||||
* a BTI landing pad at the start of everything.
|
||||
* When using in-kernel BTI we need to ensure that PCS-conformant
|
||||
* assembly functions have suitable annotations. Override
|
||||
* SYM_FUNC_START to insert a BTI landing pad at the start of
|
||||
* everything, the override is done unconditionally so we're more
|
||||
* likely to notice any drift from the overridden definitions.
|
||||
*/
|
||||
#define SYM_FUNC_START(name) \
|
||||
SYM_START(name, SYM_L_GLOBAL, SYM_A_ALIGN) \
|
||||
@ -37,8 +45,6 @@
|
||||
SYM_START(name, SYM_L_WEAK, SYM_A_NONE) \
|
||||
BTI_C
|
||||
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Annotate a function as position independent, i.e., safe to be called before
|
||||
* the kernel virtual mapping is activated.
|
||||
|
Loading…
Reference in New Issue
Block a user