[v2 0/3] Patches to address some limitations in OS microcode loading.

From: Ashok Raj
Date: Thu Feb 22 2018 - 01:34:06 EST


Patch series to address limitations of OS microcode loading.

Review comments from Boris:

Changes since v1: Patch 1/3
- Check for revision to avoid duplicate microcode load in early load
- Added inline comments.

Changes since v1: Patch 2/3
- Change to native_wbinvd for early load.

Changes since v1: Patch 3/3
- Check for return code of stop_machine
- When microcode file load fails, stop on first error.
- If any of the present CPUs are offline, then stop reload.
This is just for being paranoid.
- Added more comments in commit log and inline in file.
- split some functionality from reload_store() per Boris's comments.

What's not done from review: TBD:
- Load microcode file only once. Added comments in source for future cleanup.
- Removing ucd->errors. (Gives a count of failed loads)


Ashok Raj (3):
x86/microcode/intel: Check microcode revision before updating sibling
threads
x86/microcode/intel: Perform a cache flush before ucode update.
x86/microcode: Quiesce all threads before a microcode update.

arch/x86/kernel/cpu/microcode/core.c | 207 ++++++++++++++++++++++++++++++----
arch/x86/kernel/cpu/microcode/intel.c | 43 ++++++-
2 files changed, 222 insertions(+), 28 deletions(-)

--
2.7.4