Errors on updating the microcode in the processor were silently
dropped when invoked via the microcode_update hypercall. Also, the log
message was misleading.
Signed-off-by: Uwe Dannowski <uwed@amazon.de>
Reviewed-by: Stefan Nuernberger <snu@amazon.de>
Reviewed-by: Martin Pohlack <mpohlack@amazon.de>
Reviewed-by: Amit Shah <aams@amazon.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
if ( val[1] != uci->mc.mc_intel->hdr.rev )
{
printk(KERN_ERR "microcode: CPU%d update from revision "
- "%#x to %#x failed\n", cpu_num, uci->cpu_sig.rev, val[1]);
+ "%#x to %#x failed. Resulting revision is %#x.\n", cpu_num,
+ uci->cpu_sig.rev, uci->mc.mc_intel->hdr.rev, val[1]);
return -EIO;
}
printk(KERN_INFO "microcode: CPU%d updated from revision "
error = offset;
if ( !error && matching_count )
- apply_microcode(cpu);
+ error = apply_microcode(cpu);
return error;
}