From: Borislav Petkov <b...@suse.de> So this is something I've been meaning to do for a while now: cleanup the Intel side of the microcode loader. But who has time?
Luckily (or not), CONFIG_RANDOMIZE_MEMORY came about and broke the loader just enough so that I can finally force myself to go and clean it all up, make it more robust. So this is my attempt at it, the meat of the whole change is patch 11. Which is unreadable as a diff to almost everyone, except to me, maybe :) But it is the only way I could think of to do this without breaking the driver knowingly. Oh, and staring at the code after the patch applied makes it much clearer and nicer again anyway. This pile has been tested on both AMD and Intel boxes of different garden variety, with suspend to disk and to RAM and 32-bit and 64-bit. Comments, suggestions and eventual pickup are appreciated :) Thanks. Borislav Petkov (12): x86/microcode: Run the AP-loading routine only on the application processors x86/microcode: Move driver authors to CREDITS x86/microcode/intel: Simplify generic_load_microcode() x86/microcode: Remove one ifdef clause x86/microcode: Export the microcode cache linked list x86/microcode/AMD: Hand down the CPU family x86/microcode: Issue the debug printk on resume only on success x86/microcode: Collect CPU info on resume x86/microcode/AMD: Retract functions x86/microcode/intel: Remove intel_lib.c x86/microcode: Rework microcode loading x86/microcode: Bump driver version, update copyrights CREDITS | 4 + arch/x86/include/asm/microcode.h | 18 +- arch/x86/include/asm/microcode_amd.h | 30 +- arch/x86/include/asm/microcode_intel.h | 4 - arch/x86/kernel/cpu/common.c | 7 +- arch/x86/kernel/cpu/microcode/Makefile | 2 +- arch/x86/kernel/cpu/microcode/amd.c | 421 ++++++++------- arch/x86/kernel/cpu/microcode/core.c | 83 ++- arch/x86/kernel/cpu/microcode/intel.c | 834 +++++++++++++----------------- arch/x86/kernel/cpu/microcode/intel_lib.c | 184 ------- 10 files changed, 647 insertions(+), 940 deletions(-) delete mode 100644 arch/x86/kernel/cpu/microcode/intel_lib.c -- 2.10.0