[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <tip-accd1e823ed1d5980106dd522a4c535084400830@git.kernel.org>
Date: Fri, 27 Sep 2013 04:02:04 -0700
From: tip-bot for Suravee Suthikulpanit <tipbot@...or.com>
To: linux-tip-commits@...r.kernel.org
Cc: linux-kernel@...r.kernel.org, hpa@...or.com, mingo@...nel.org,
bp@...en8.de, suravee.suthikulpanit@....com,
jacob.w.shin@...il.com, herrmann.der.user@...glemail.com,
tglx@...utronix.de, bp@...e.de
Subject: [tip:x86/urgent] x86/microcode/AMD:
Fix patch level reporting for family 15h
Commit-ID: accd1e823ed1d5980106dd522a4c535084400830
Gitweb: http://git.kernel.org/tip/accd1e823ed1d5980106dd522a4c535084400830
Author: Suravee Suthikulpanit <suravee.suthikulpanit@....com>
AuthorDate: Wed, 29 Sep 2010 19:27:12 -0500
Committer: Ingo Molnar <mingo@...nel.org>
CommitDate: Fri, 27 Sep 2013 09:29:27 +0200
x86/microcode/AMD: Fix patch level reporting for family 15h
On AMD family 14h, applying microcode patch on the a core (core0)
would also affect the other core (core1) in the same compute
unit. The driver would skip applying the patch on core1, but it
still need to update kernel structures to reflect the proper
patch level.
The current logic is not updating the struct
ucode_cpu_info.cpu_sig.rev of the skipped core. This causes the
/sys/devices/system/cpu/cpu1/microcode/version to report
incorrect patch level as shown below:
$ grep . cpu?/microcode/version
cpu0/microcode/version:0x600063d
cpu1/microcode/version:0x6000626
cpu2/microcode/version:0x600063d
cpu3/microcode/version:0x6000626
cpu4/microcode/version:0x600063d
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@....com>
Acked-by: Borislav Petkov <bp@...e.de>
Cc: <bp@...en8.de>
Cc: <jacob.w.shin@...il.com>
Cc: <herrmann.der.user@...glemail.com>
Link: http://lkml.kernel.org/r/1285806432-1995-1-git-send-email-suravee.suthikulpanit@amd.com
Signed-off-by: Ingo Molnar <mingo@...nel.org>
---
arch/x86/kernel/microcode_amd.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/kernel/microcode_amd.c b/arch/x86/kernel/microcode_amd.c
index 7123b5d..af99f71 100644
--- a/arch/x86/kernel/microcode_amd.c
+++ b/arch/x86/kernel/microcode_amd.c
@@ -216,6 +216,7 @@ int apply_microcode_amd(int cpu)
/* need to apply patch? */
if (rev >= mc_amd->hdr.patch_id) {
c->microcode = rev;
+ uci->cpu_sig.rev = rev;
return 0;
}
--
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