Ingo, I've done some final clean ups of the 2 or 5 byte nop code and I also added a few generic clean ups of jump label itself. The first 2 patches use the best nops as defined by Peter when we do not know what the machine is running. The third patch adds paranoid checks, to make sure what we are modifying is truely what it expects. Otherwise we bug and crash the kernel (as recommended by Peter). The last two patches are the clean up versions of the 2 or 5 byte nops. Note, there is code in the infrastructure that can be shared among other users in scripts and elsewhere. I rather get this code in first and then fiddle with seeing who does what and then integrate all the code together. As that may not be such an easy task, and I don't want to post pone this code due to it. Also, I feel that we can let this code sit for a bit on LKML and let people comment. If everyone gives there acks, then we can pull this code in. I already tested it, but if there are acks, I can rebase just to update the acked-bys. Please pull (if everyone's OK with it) the latest tip/perf/jump-label tree, which can be found at: git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git tip/perf/jump-label Head SHA1: 7837dddecaa7e7f31b732a0c302a4bdd255a8321 Steven Rostedt (5): x86/jump-label: Use best default nops for inital jump label calls x86/jump-label: Do not bother updating nops if they are correct x86/jump-label: Add safety checks to jump label conversions jump labels: Add infrastructure to update jump labels at compile time jump labels/x86: Use etiher 5 byte or 2 byte jumps ---- Makefile | 7 + arch/Kconfig | 6 + arch/x86/Kconfig | 1 + arch/x86/include/asm/jump_label.h | 9 +- arch/x86/kernel/jump_label.c | 110 +++++++++++- scripts/Makefile | 1 + scripts/Makefile.build | 15 ++- scripts/update_jump_label.c | 335 +++++++++++++++++++++++++++++++++++++ scripts/update_jump_label.h | 208 +++++++++++++++++++++++ 9 files changed, 678 insertions(+), 14 deletions(-)