lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 18 Feb 2022 17:49:08 +0100 From: Peter Zijlstra <peterz@...radead.org> To: x86@...nel.org, joao@...rdrivepizza.com, hjl.tools@...il.com, jpoimboe@...hat.com, andrew.cooper3@...rix.com Cc: linux-kernel@...r.kernel.org, peterz@...radead.org, ndesaulniers@...gle.com, keescook@...omium.org, samitolvanen@...gle.com, mark.rutland@....com, alyssa.milburn@...el.com Subject: [PATCH 06/29] x86/ibt: Add ANNOTATE_NOENDBR In order to have objtool warn about code references to !ENDBR instruction, we need an annotation to allow this for non-coontrol-flow instances -- consider text range checks, text patching, or return trampolines etc. Signed-off-by: Peter Zijlstra (Intel) <peterz@...radead.org> --- arch/x86/include/asm/linkage.h | 11 +++++++++++ include/linux/instruction_pointer.h | 5 +++++ include/linux/objtool.h | 13 +++++++++++++ 3 files changed, 29 insertions(+) --- a/include/linux/objtool.h +++ b/include/linux/objtool.h @@ -78,6 +78,12 @@ struct unwind_hint { #define STACK_FRAME_NON_STANDARD_FP(func) #endif +#define ANNOTATE_NOENDBR \ + "986: \n\t" \ + ".pushsection .discard.noendbr\n\t" \ + _ASM_PTR " 986b\n\t" \ + ".popsection\n\t" + #else /* __ASSEMBLY__ */ /* @@ -130,6 +136,13 @@ struct unwind_hint { .popsection .endm +.macro ANNOTATE_NOENDBR +.Lhere_\@: + .pushsection .discard.noendbr + .quad .Lhere_\@ + .popsection +.endm + #endif /* __ASSEMBLY__ */ #else /* !CONFIG_STACK_VALIDATION */
Powered by blists - more mailing lists