aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Oruba <peter.oruba@amd.com>2008-08-01 06:46:46 -0400
committerIngo Molnar <mingo@elte.hu>2008-08-15 11:18:46 -0400
commit636a31781684d0f49208aa163f1a5a3a74210eb4 (patch)
treed9004b30d6519efeb204db740533d8003cf60419
parentd33dcb9e7d272cc3171dcc3a21049902185ab03d (diff)
x86: Fixed NULL function pointer dereference in AMD microcode patch loader.
Dereference took place in code part responsible for manual installation of microcode patches through /dev/cpu/microcode. Signed-off-by: Peter Oruba <peter.oruba@amd.com> Cc: Peter Oruba <peter.oruba@amd.com> Cc: Tigran Aivazian <tigran@aivazian.fsnet.co.uk> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/microcode.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kernel/microcode.c b/arch/x86/kernel/microcode.c
index 39961bb83293..ad136ad99cb3 100644
--- a/arch/x86/kernel/microcode.c
+++ b/arch/x86/kernel/microcode.c
@@ -127,7 +127,8 @@ static int do_microcode_update(void)
127 old = current->cpus_allowed; 127 old = current->cpus_allowed;
128 128
129 while ((cursor = microcode_ops->get_next_ucode(&new_mc, cursor)) > 0) { 129 while ((cursor = microcode_ops->get_next_ucode(&new_mc, cursor)) > 0) {
130 error = microcode_ops->microcode_sanity_check(new_mc); 130 if (microcode_ops->microcode_sanity_check != NULL)
131 error = microcode_ops->microcode_sanity_check(new_mc);
131 if (error) 132 if (error)
132 goto out; 133 goto out;
133 /* 134 /*