Recently Intel released microcode update for their Core 2 Duo and Core 2 Extreme processors (E6000/E4000 and Q6600/QX6700 series accordingly). This update fix a bug in TLB processing, which can cause incorrect records invalidation. That may result in upredictable system behavour/hangs/reboots/etc.

For FreeBSD you can use devcpu port to update your microcode. It already includes these critical updates, thus will protect you from possible failures linked with the bug. Just install it as usual and add 'devcpu_enable="YES"' in the rc.conf file. Processor microcode will be updated on the next restart (or you can issue /usr/local/etc/rc.d/devcpu start by hand).

5 Responses to “Intel Critical Microcode update”

  1. Eric Anholt Says:
    Is there a plan to get this integrated into the kernel? Seems like it would be nice, then you could just have an install-once port for the microcode updates.
  2. Stanislav Sedov Says:
    Personally, I see no point of having it in the base system, since it will be not useful without microcodes, which we can't redistribute. Also, it can be used in coduction with x86info, which is ports anyway. Probably, I should just create a separate port with microcodes itself to update them without reinstalling the module itself.
  3. mato Says:

    once devcpu installed and rc.conf modified, will it reload microcode on each reboot or just once ? does it know which microcode to load ? is it safe ? or is it better just to run it manually when necessary ? :-)

  4. stas Says:

    If devcpu is enabled in rc.conf it will load appropriate microcode updates on each boot. It's generally a good practice to let it do updates on startup, since microcode memory in cpu isn't persistent, and after reboot it will be lost.

    Having devcpu enabled in rc.conf will make you sure you're always have the latest available microcode loaded to you cpu.

  5. Gregg Cherry Says:

    3leg3almlkzv6xny

Leave a Reply