Messages in this thread | | | Date | Fri, 18 May 2018 09:18:14 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH] objtool: Detect assembly code falling through to INT3 padding |
| |
* Josh Poimboeuf <jpoimboe@redhat.com> wrote:
> With the following commit: > > 51bad67ffbce ("x86/asm: Pad assembly functions with INT3 instructions") > > ... asm function alignments are padded with INT3, so it's no longer safe > to fall through to an aligned function. Make sure we catch any such > cases with objtool. > > Note this only adds checking for 64-bit, since objtool doesn't support > x86-32. > > Suggested-by: Thomas Gleixner <tglx@linutronix.de> > Suggested-by: Linus Torvalds <torvalds@linux-foundation.org> > Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com> > --- > arch/x86/kernel/head_64.S | 2 -- > tools/objtool/arch.h | 3 ++- > tools/objtool/arch/x86/decode.c | 2 +- > tools/objtool/check.c | 11 ++++++++++- > 4 files changed, 13 insertions(+), 5 deletions(-)
Ok, this is cool, it addresses the robustness problem that INT3 padding introduced very nicely.
The concept of built-in kernel tooling working at the machine code level is just so powerful - we should have added our own KCC compiler 20 years ago.
Thanks,
Ingo
| |