arm64: Document why we enable PAC support for leaf functions
Document the fact that we enable pointer authentication protection for leaf functions since there is some narrow potential for ROP protection benefits and little overhead has been observed. Signed-off-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20200506195138.22086-2-broonie@kernel.org Signed-off-by: Will Deacon <will@kernel.org>
This commit is contained in:
parent
e5159827e0
commit
717b938e22
|
@ -71,6 +71,9 @@ branch-prot-flags-y += $(call cc-option,-mbranch-protection=none)
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARM64_PTR_AUTH),y)
|
ifeq ($(CONFIG_ARM64_PTR_AUTH),y)
|
||||||
branch-prot-flags-$(CONFIG_CC_HAS_SIGN_RETURN_ADDRESS) := -msign-return-address=all
|
branch-prot-flags-$(CONFIG_CC_HAS_SIGN_RETURN_ADDRESS) := -msign-return-address=all
|
||||||
|
# We enable additional protection for leaf functions as there is some
|
||||||
|
# narrow potential for ROP protection benefits and no substantial
|
||||||
|
# performance impact has been observed.
|
||||||
branch-prot-flags-$(CONFIG_CC_HAS_BRANCH_PROT_PAC_RET) := -mbranch-protection=pac-ret+leaf
|
branch-prot-flags-$(CONFIG_CC_HAS_BRANCH_PROT_PAC_RET) := -mbranch-protection=pac-ret+leaf
|
||||||
# -march=armv8.3-a enables the non-nops instructions for PAC, to avoid the
|
# -march=armv8.3-a enables the non-nops instructions for PAC, to avoid the
|
||||||
# compiler to generate them and consequently to break the single image contract
|
# compiler to generate them and consequently to break the single image contract
|
||||||
|
|
Loading…
Reference in New Issue