Linux 更新处理器微代码 CPU microcode简单记录
Kernel 配置
当前Linux kernel 中microcode 模块已提供Intel/AMD CPU更新接口, 配置以下参数启用此模块:
CONFIG_MICROCODE=y
CONFIG_MICROCODE_INTEL=y
CONFIG_MICROCODE_AMD=y
CONFIG_MICROCODE_OLD_INTERFACE=y
CONFIG_MICROCODE_INTEL_LIB=y
此模块提供三种不同的方式接口:
1. /dev/cpu/microcode,通过第三方工具(如microcode_ctl)将microcode中对应当前系统cpu的ucode写入即可更新 ; kernel 3.9以后版本需开启 kernel配置参数保持兼容;
CONFIG_MICROCODE_OLD_INTERFACE=y
sysfs接口,echo 1 > /sys/devices/system/cpu/microcode/reload内核将自动查找/lib/firmware/intel-ucode/目录下基于当前CPU(格式为:family-model-stepping)更新文件并执行更新操作;
EARLY方式,kernel在初始化后,加载混合了microcodecpio与initrdramfs的initrd自动完成更新操作; 需kernel3.9之后版本并开启配置参数:
CONFIG_MICROCODE_INTEL_EARLY=y
CONFIG_MICROCODE_AMD_EARLY=y
CONFIG_MICROCODE_EARLY=y
microcode更新
确认当前待更新microcode CPU 版本及步进等