From: Borislav Petkov Date: Thu, 29 Oct 2009 13:45:52 +0000 (+0100) Subject: x86, amd-ucode: Check UCODE_MAGIC before loading the container file X-Git-Tag: v2.6.32-rc7~48^2 X-Git-Url: https://bbs.cooldavid.org/git/?a=commitdiff_plain;h=506f90eeae682dc96c11c7aefac0262b3a560b49;p=net-next-2.6.git x86, amd-ucode: Check UCODE_MAGIC before loading the container file Signed-off-by: Borislav Petkov Signed-off-by: Andreas Herrmann LKML-Reference: <20091029134552.GC30802@alberich.amd.com> Signed-off-by: Ingo Molnar --- diff --git a/arch/x86/kernel/microcode_amd.c b/arch/x86/kernel/microcode_amd.c index 366baa17991..f4c538b681c 100644 --- a/arch/x86/kernel/microcode_amd.c +++ b/arch/x86/kernel/microcode_amd.c @@ -317,6 +317,12 @@ static enum ucode_state request_microcode_fw(int cpu, struct device *device) return UCODE_NFOUND; } + if (*(u32 *)firmware->data != UCODE_MAGIC) { + printk(KERN_ERR "microcode: invalid UCODE_MAGIC (0x%08x)\n", + *(u32 *)firmware->data); + return UCODE_ERROR; + } + ret = generic_load_microcode(cpu, firmware->data, firmware->size); release_firmware(firmware);