[RFC PATCH 0/4] x86, alternatives: Insn padding and more robust JMPs

From: Borislav Petkov
Date: Mon Jan 05 2015 - 10:01:07 EST


From: Borislav Petkov <bp@xxxxxxx>

Hi all,

this is something which hpa and I talked about recently: the ability for
the alternatives code to add padding to the original instruction in case
the replacement is longer and also to be able to simply write "jmp" and
not care about which JMP exactly the compiler generates and whether the
relative offsets are correct.

So this is a stab at it, it seems to boot in kvm here but it needs more
staring to make sure we're actually generating the proper code at all
times.

Thus the RFC tag, comments/suggestions are welcome.

Thanks.

Borislav Petkov (4):
x86, copy_user: Remove FIX_ALIGNMENT define
x86, alternatives: Cleanup DPRINTK macro
alternatives: Add instruction padding
alternatives: Make JMPs more robust

arch/x86/include/asm/alternative-asm.h | 38 ++++++++++
arch/x86/include/asm/alternative.h | 34 +++++----
arch/x86/include/asm/cpufeature.h | 12 +--
arch/x86/kernel/alternative.c | 130 +++++++++++++++++++++++++++------
arch/x86/lib/copy_page_64.S | 34 ++++-----
arch/x86/lib/copy_user_64.S | 44 ++---------
6 files changed, 193 insertions(+), 99 deletions(-)

--
2.2.0.33.gc18b867

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/