[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <tip-506f90eeae682dc96c11c7aefac0262b3a560b49@git.kernel.org>
Date: Tue, 10 Nov 2009 04:51:39 GMT
From: tip-bot for Borislav Petkov <borislav.petkov@....com>
To: linux-tip-commits@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, hpa@...or.com, mingo@...hat.com,
andreas.herrmann3@....com, tglx@...utronix.de, mingo@...e.hu,
borislav.petkov@....com
Subject: [tip:x86/urgent] x86, amd-ucode: Check UCODE_MAGIC before loading the container file
Commit-ID: 506f90eeae682dc96c11c7aefac0262b3a560b49
Gitweb: http://git.kernel.org/tip/506f90eeae682dc96c11c7aefac0262b3a560b49
Author: Borislav Petkov <borislav.petkov@....com>
AuthorDate: Thu, 29 Oct 2009 14:45:52 +0100
Committer: Ingo Molnar <mingo@...e.hu>
CommitDate: Tue, 10 Nov 2009 05:46:09 +0100
x86, amd-ucode: Check UCODE_MAGIC before loading the container file
Signed-off-by: Borislav Petkov <borislav.petkov@....com>
Signed-off-by: Andreas Herrmann <andreas.herrmann3@....com>
LKML-Reference: <20091029134552.GC30802@...erich.amd.com>
Signed-off-by: Ingo Molnar <mingo@...e.hu>
---
arch/x86/kernel/microcode_amd.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/arch/x86/kernel/microcode_amd.c b/arch/x86/kernel/microcode_amd.c
index 366baa1..f4c538b 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);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists