[PATCH v2 0/4] x86/alternatives: Do NOPs optimization on a temporary buffer

From: Borislav Petkov
Date: Sun Mar 31 2024 - 14:01:12 EST


From: "Borislav Petkov (AMD)" <bp@xxxxxxxxx>

Hi,

here's v2 of the set to do NOPs optimizations on a temporary buffer
after the last-minute conflict and resulting breakage before the last
merge window which made me retract those.

This v2 has been extensively tested on 6.9-rc1.

Thx.

Changelog:
=========

v0:

here's a small set which sprang out from my reacting to the fact that
NOPs optimization in the alternatives code needs to happen on
a temporary buffer like the other alternative operations - not in-place
and cause all kinds of fun.

The result is this, which makes the alternatives code simpler and it is
a net win, size-wise:

1 file changed, 50 insertions(+), 72 deletions(-)

Constructive feedback is always welcome!

Borislav Petkov (AMD) (4):
x86/alternatives: Use a temporary buffer when optimizing NOPs
x86/alternatives: Get rid of __optimize_nops()
x86/alternatives: Optimize optimize_nops()
x86/alternatives: Sort local vars in apply_alternatives()

arch/x86/include/asm/text-patching.h | 2 +-
arch/x86/kernel/alternative.c | 133 ++++++++++++---------------
arch/x86/kernel/callthunks.c | 9 +-
3 files changed, 62 insertions(+), 82 deletions(-)

--
2.43.0