the following patch was just integrated into master: commit ef6dfc1d0656f34331519fb97e5ec87784c4686d Author: Stefan Reinauer reinauer@chromium.org Date: Wed May 2 16:41:55 2012 -0700
Fix register corruption during Intel Microcode update
Another bug in the Intel microcode update code that existed since we switched to LinuxBIOSv2 in 2004:
The inline assembly code that reads the CPU revision from an MSR after running cpuid(1) trashes registers EBX and ECX. Only ECX was mentioned in the clobber list. C code running after this function could silently access completely wrong data, which resulted in the wrong date being printed on microcode updates (and potentially other issues happening until the C code writes to EBX again)
Change-Id: Ida733fa1747565ec9824d3a37d08b1a73cd8355f Signed-off-by: Stefan Reinauer reinauer@google.com
Reviewed-By: Patrick Georgi patrick@georgi-clan.de at Thu May 3 10:47:36 2012, giving +2 Build-Tested: build bot (Jenkins) at Thu May 3 03:37:28 2012, giving +1 See http://review.coreboot.org/996 for details.
-gerrit