[PATCH 00/14] x86/alternatives: Nest them

Borislav Petkov posted 14 patches 1 year, 8 months ago
There is a newer version of this series
arch/x86/include/asm/alternative.h | 214 ++++++++---------------------
arch/x86/kernel/alternative.c      |  20 ++-
arch/x86/kernel/fpu/xstate.h       |   6 +-
tools/objtool/arch/x86/special.c   |  23 ++++
tools/objtool/special.c            |  16 +--
5 files changed, 113 insertions(+), 166 deletions(-)
[PATCH 00/14] x86/alternatives: Nest them
Posted by Borislav Petkov 1 year, 8 months ago
From: "Borislav Petkov (AMD)" <bp@alien8.de>

Hi,

this is basically peterz's idea to nest the alternative macros with
a fix to an issue I encountered while testing.

For ease of bisection, the old macros are converted to the new, nested
variants in a step-by-step manner so that in case an issue is
encountered during testing, one can pinpoint the place where it fails
easier. Because debugging alternatives is a serious pain.

Testing here on my farm looks good but who knows what happens out there,
in the wild.

Thx.

Borislav Petkov (AMD) (13):
  x86/alternative: Zap alternative_ternary()
  x86/alternative: Convert alternative()
  x86/alternative: Convert alternative_2()
  x86/alternative: Convert alternative_input()
  x86/alternative: Convert alternative_io()
  x86/alternative: Convert alternative_call()
  x86/alternative: Convert alternative_call_2()
  x86/alternative: Convert ALTERNATIVE_TERNARY()
  x86/alternative: Convert ALTERNATIVE_3()
  x86/alternative: Convert the asm ALTERNATIVE() macro
  x86/alternative: Convert the asm ALTERNATIVE_2() macro
  x86/alternative: Convert the asm ALTERNATIVE_3() macro
  x86/alternative: Replace the old macros

Peter Zijlstra (1):
  x86/alternatives: Add nested alternatives macros

 arch/x86/include/asm/alternative.h | 214 ++++++++---------------------
 arch/x86/kernel/alternative.c      |  20 ++-
 arch/x86/kernel/fpu/xstate.h       |   6 +-
 tools/objtool/arch/x86/special.c   |  23 ++++
 tools/objtool/special.c            |  16 +--
 5 files changed, 113 insertions(+), 166 deletions(-)

-- 
2.43.0