Re: AMD microcode loading broken on 32 bit

From: Borislav Petkov
Date: Tue Jan 28 2014 - 11:24:49 EST


On Thu, Jan 23, 2014 at 02:41:59PM -0500, Boris Ostrovsky wrote:
> 32-bit only.

Ok, I think I know what happens. Can you try this one (I missed doing
this on 32-bit and 64-bit does it, which would explain why it didn't
explode there):

---
diff --git a/arch/x86/kernel/cpu/microcode/amd_early.c b/arch/x86/kernel/cpu/microcode/amd_early.c
index 8384c0fa206f..03b759401bc1 100644
--- a/arch/x86/kernel/cpu/microcode/amd_early.c
+++ b/arch/x86/kernel/cpu/microcode/amd_early.c
@@ -359,7 +359,7 @@ int __init save_microcode_in_initrd_amd(void)
pr_info("microcode: updated early to new patch_level=0x%08x\n",
ucode_new_rev);

- if (!container)
+ if (!container || !ucode_cpio.data)
return -EINVAL;

eax = cpuid_eax(0x00000001);

--
Regards/Gruss,
Boris.

Sent from a fat crate under my desk. Formatting is fine.
--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/