Intel, AMD, VIA & Freescale CPU Microcode Repositories Discussion

New in Windows 10 build 19564:
!New_cpu306C3_plat32_ver00000028_2019-11-12_PRD_DBD4CFD1.bin
!New_cpu306D4_platC0_ver0000002F_2019-11-12_PRD_8B6D899D.bin
!New_cpu40651_plat72_ver00000026_2019-11-12_PRD_7784160A.bin
!New_cpu40661_plat32_ver0000001C_2019-11-12_PRD_D552A842.bin
!New_cpu40671_plat22_ver00000022_2019-11-12_PRD_00B9F4B1.bin
!New_cpu406E3_platC0_ver800000DA_2020-01-09_PRE_9AAA1FEF.bin
!New_cpu50653_plat97_ver01000154_2019-12-20_PRD_909D6278.bin
!New_cpu50654_platB7_ver02000068_2019-11-18_PRD_707F7CDD.bin
!New_cpu50657_platBF_ver05002F00_2020-01-14_PRD_C6A68CE6.bin
!New_cpu506E3_plat36_ver000000DA_2020-01-09_PRD_68102B04.bin
!New_cpu806E9_plat10_ver000000D2_2020-01-09_PRD_2283F628.bin
!New_cpu806E9_platC0_ver000000D2_2020-01-09_PRD_99EB87E3.bin
!New_cpu806EA_platC0_ver000000D2_2020-01-09_PRD_88F3599C.bin
!New_cpu806EB_platD0_ver000000D2_2020-01-09_PRD_E6B3256E.bin
!New_cpu806EC_plat94_ver000000D2_2020-01-10_PRD_F4437C0F.bin
!New_cpu906E9_plat2A_ver000000D2_2020-01-09_PRD_2B0E721D.bin
!New_cpu906EA_plat22_ver000000D2_2020-01-09_PRD_711B4326.bin
!New_cpu906EB_plat02_ver000000D2_2020-01-09_PRD_F06E548E.bin
!New_cpu906EC_plat22_ver000000D2_2020-01-09_PRD_F7C1EE8A.bin
!New_cpu906ED_plat22_ver000000D2_2020-01-09_PRD_02ACFA7D.bin

W10_19564.zip (1.4 MB)

Would be nice if somebody tested the performance for the new Coffee Lake microcode, the previous CA version was rather disastrous. I’d test it myself, but my motherboard is cheap and doesn’t have dual BIOS, so if the flash fails I’d have to buy a reprogram tool.

@Marvin what is the reason for the new microcodes?

Most likely to fix https://www.intel.com/content/www/us/en/…l-sa-00329.html

It is not public yet but I tested new 306C3 and it’s now reporting a totally undocumented bit in CPUID:
27:
eax in: 0x00000007, eax = 00000000 ebx = 000027ab ecx = 00000000 edx = 9c000400
28:
eax in: 0x00000007, eax = 00000000 ebx = 000027ab ecx = 00000000 edx = 9c000600

EDX has changed from 9c000400 to 9c000600 meaning now an undocumented bit 9 is active.

Latest intel documentation about this is here:
https://software.intel.com/security-soft…hitectural-msrs
Bit 10: MD_CLEAR supported.
Bits 25-00: Reserved
Bit 26: IBRS and IBPB supported
Bit 27: STIBP supported
Bit 28: L1D_FLUSH supported
Bit 29: IA32_ARCH_CAPABILITIES supported
Bit 30: Reserved
Bit 31: SSBD supported

I bet in a few weeks we will know what Bit 9 means.

@Marvin Normally Windows 10 will load those new microcode when running instead of the older microcode via bios. But on 19564.1005 build It was loading bios microcode which older than Windows 10 library above. Do you have any Idea about this build practice?

Can we doing something via regedit to use the new microcode from this build?



haswell processors doesn’t seem to be affected by INTEL-SA-00329

https://software.intel.com/security-soft…gister-sampling
https://software.intel.com/security-soft…iction-sampling

https://www.intel.com/content/dam/www/pu…te-guidance.pdf

@RvdH maybe is only an optimization?




Hey Marvin. Have you tried an overclock on this new Microcode 28 in 306C3? I was updating my Bios the other day with the latest ver. of UBU Tool and noticed the new “Microcode 28” also myself and updated my bios from MC 27 to 28.I did not try it yet though but will give it a go if 28 is worth it.Any thoughts on what you have seen so far.

I do try it (MC 28) with a 4790 and my BCLK max. is less good.

MC 27 => BCLK 106Mhz
MC 28 => BCLK 105Mhz

@Marvin i found this:

SHUF* instruction implementation flaw (DoS)

A flaw was found in Intel microprocessors’ implementation of packed byte shuffle AVX instructions (SHUF*). The defect can be exploited to cause stability problems in the processor and possibly create a Machine Check Exception (MCE).

This could allow an attacker with a local account to possibly crash the system or the host within a guest on a virtual environment.

This issue requires a microcode update and it is expected to have no expected performance impact or change.

Maybe this is the bit 9

I doubt it, that SHUF bug is an old one that was fixed with 20191112 general release of Intel microcode.

Incomplete fixes for previous MDS mitigations (VERW)

Firmware changes released on 14 May 2019 for the initial round of MDS overloaded an instruction that was intended to clear a buffer to ensure information would not leak to the end user. This fix modified four of the instructions to perform additional functionality to be used by the operating systems in an attempt to mitigate the flaw. These instructions were:

VERW instruction
L1D_FLUSH instruction
RSM (Return from System Management mode)
SGX Enter and SGX Exit. (Secure Enclave Enter and Exit).

The VERW and L1D_FLUSH commands were used by operating system vendors to instruct the firmware running on the affected processors to overwrite buffer values that can be used in the various MDS attack set.

The flaw is that the L1D buffers were incorrectly cleared and not all bits of the buffer were set to zero. Some parts (bits 16-31 and 48-63) of the buffer were restored to their last known value prior to clearing shortly after they were set to be cleared.

This allows a side-channel into the partially shared data by the system, but to a lesser extent than previous MDS exposure.

A local attacker would need to execute an MDS style attack on systems to gather intelligence on the system. The attack reliability is believed to be considerably less reliable than previous MDS style attacks.

This issue requires a microcode update and it is expected to have no performance impact or change.

Also the SHUF bug you are correct that was fixed with 20191112 but the haswell microcode 27 is from may. So i believe that i am correct but who knows.

SHUF was fixed on multiple processor generations and none of them have bit 9 defined. It was a silent fix that the OS does not check. Having an undocumented new CPUID flag is for the OS to see that something important has changed/been implemented/guaranteed-not-affected.

Has anyone compared microcode 28 to previous versions.I have MC.27 on my I7-4790K and wonder if its worth the while to to update it with the ubu tool.I have a good 5.0 overclock on it now with 1.375v.I might test it out by weeks end just for kicks unless I hear something here that it’s worse than 27 for decent overclocking.We’ll see…

Nothing new in Windows 10 build 19569.

With microcode 28 (4790) it seems that i have smoother game-play bfv (time-frames). Has anyone tested it? Also my x-fi titanium sound-card seems to not crackle with bfv when a lot of explosions take place.

Missing items.

cpu906ED_plat22_ver000000CC_2019-12-12_PRD_94F4B441 (<cpu906ED_plat22_ver000000D2_2020-01-09_PRD_02ACFA7D)
cpu906EA_plat22_ver000000CC_2019-12-08_PRD_6DBFEE19 (<cpu906EA_plat22_ver000000D2_2020-01-09_PRD_711B4326)

mc.rar (195 KB)

@westlake Not missing but superceded by D2 on Github.

I have added them to my Intel microcode archive thread.



Missing…

Ah yes it is missing from the latest database, my apologies good sir.