Intel Microcode Update Utility for Linux

The microcode_ctl utility is a companion to the IA32 microcode driver written by Tigran Aivazian <tigran@aivazian.fsnet.co.uk>. The utility has two uses:

The microcode update is volatile and needs to be uploaded on each system boot i.e. it doesn't reflash your cpu permanently, reboot and it reverts back to the old microcode.


*** Intel are now distributing the microcode to the wider community ***

A lot has happened in the last 7 years, and now with more OSs and CPUs to support Intel have decided to make their microcode datafiles available for general download on their main Download center and as there isn't any point in multiple points of distribution we'll not be making updated datafiles available anymore!

To get the datafile, you now have to go to http://downloadcenter.intel.com/default.aspx select processors, select the CPU you're interested in, go to Linux as the OS and download from there. You can setup an RSS feed if you're interested too.

Anyway, there you go!

-Simon


FAQ

Q. is there a changelog for the microcode?
A. No, if Intel change their minds and release it we'll post it here.

Q. what eratta are fixed with microcode version X?
A. see the first question....

Q. ....AMD or any non-Intel processors?
A. This driver is designed for Intel IA32 microprocessors only, it will not work with AMD or any other non-Intel processors as they don't support microcode updates or they support it in a manner different from Intel's specs.

Most Recent Microcode data file is here >

Download microcode_ctl app source

This utility requires the Linux kernel IA32 microcode driver (2.4.0-test1-ac10 or 2.2.18 onwards). These kernels can be found on http://www.kernel.org

The project is listed on freshmeat http://freshmeat.net/projects/intelp6microcodeupdateutility/ and is now included in many Linux distributions.

RPM Packages

The (S)RPM packages were removed from the website - the RPM packages can now be built directly from the tar.gz file. It's easy and this avoids the portability problems of rpm v3 and v4, it should work on upgraded RedHat and SuSE distributions.

"rpm -ta microcode_ctl-x.xx.tar.gz" or on more recent machines "rpmbuild -ta microcode_ctl-x.xx.tar.gz"

The RPM and SRPM will be placed in the default location for your system, it's printed as rpm finishes (e.g. RedHat it's /usr/src/redhat/*RPMS/ and SuSE is /usr/src/packages/*RPMS/)

Debian Packages

Francisco Javier Jimenez Gomez <frajigo@inf.upv.es> sent me some patches for debian unstable 3.1, here's an uber patch in unified diff against TOT debian-unstable.patch

Giacomo Catenazzi <cate@debian.org> is maintaining a copy of the utility in a Debianized format, they are available from his site at http://people.debian.org/~cate/files/microcode/

Questions?

Contact either myself at simon@urbanmyth.org or Tigran at tigran@aivazian.fsnet.co.uk. (Please note that simon@veritas.com is no longer a valid email address!)

Special thanks

Intel Corporation, for supplying microcode update data and publishing the specifications that enabled us to write microcode driver for Linux.

File last modified: Sunday, 07-Oct-2007 18:06:27 BST simon@urbanmyth.org