<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Arveex</id>
	<title>Alpine Linux - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.alpinelinux.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Arveex"/>
	<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/wiki/Special:Contributions/Arveex"/>
	<updated>2026-05-10T09:11:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.alpinelinux.org/w/index.php?title=CPU_Microcode&amp;diff=28591</id>
		<title>CPU Microcode</title>
		<link rel="alternate" type="text/html" href="https://wiki.alpinelinux.org/w/index.php?title=CPU_Microcode&amp;diff=28591"/>
		<updated>2024-12-29T12:34:54Z</updated>

		<summary type="html">&lt;p&gt;Arveex: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;CPU &#039;&#039;&#039;microcode&#039;&#039;&#039; is a form of firmware that controls the processor&#039;s internals. &lt;br /&gt;
&lt;br /&gt;
In modern processors, the microcode handles execution of complex and highly specialized instructions. Parts of the microcode also act as firmware for the processor&#039;s embedded controllers, and it is even used to fix or to mitigate &#039;&#039;&#039;processor design/implementation errata/bugs&#039;&#039;&#039;. Given the complexity of modern processors, a CPU may have over a hundred such errata.&lt;br /&gt;
&lt;br /&gt;
Recently, microcode updates have become mandatory for security due to [https://en.wikipedia.org/wiki/Side-channel_attack side-channel attacks] against CPUs.&lt;br /&gt;
&lt;br /&gt;
== Obtaining microcode updates on Alpine ==&lt;br /&gt;
&lt;br /&gt;
{{Warning| Certain Intel CPUs, such Intel Atom with PSE errata, and Intel Haswell + Broadwell with TSX errata, can only be fixed via BIOS or UEFI update (which includes microcode); if you are using one of these CPUs, please do not use the instructions below}}&lt;br /&gt;
&lt;br /&gt;
On Alpine Linux, CPU microcode is loaded early via initrd images, premade images are available from packages:&lt;br /&gt;
&lt;br /&gt;
To obtain the microcode update package for AMD processors:&lt;br /&gt;
{{cmd|apk add {{pkg|amd-ucode}}}}&lt;br /&gt;
&lt;br /&gt;
To obtain the microcode update package for Intel processors:&lt;br /&gt;
{{cmd|apk add {{pkg|intel-ucode}}}}&lt;br /&gt;
&lt;br /&gt;
If you are using syslinux or grub in a typical setup, the packages will automatically append your {{path|extlinux.conf}} or {{path|grub.conf}} file and merely a reboot will be required to run the new microcode. Users using UEFI&#039;s built-in boot manager will have to use efibootmgr to add a second initrd line. Likewise if you are using the limine bootoader will need to add a 2nd MODULE_PATH directive in {{path|limine.cfg}} pointing to the ucode file.&lt;br /&gt;
&lt;br /&gt;
== Verifying that the microcode image has loaded ==&lt;br /&gt;
Run the command:&lt;br /&gt;
{{cmd|dmesg &amp;amp;#124; grep microcode}}&lt;br /&gt;
If the microcode initrd image was loaded, the microcode update driver will print a signature and revision&lt;br /&gt;
&lt;br /&gt;
Example for Intel:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ 2.198775 ] microcode&amp;amp;#58; sig&amp;amp;#61;0x6fd, pf&amp;amp;#61;0x80, revision&amp;amp;#61;0xa4&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example for AMD:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[   11.442146] microcode: Current revision: 0x0a0011d5&lt;br /&gt;
[   11.447027] microcode: Updated early from: 0x0a0011d3&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Todo|Example needed for VIA CPUs, they seem to print slightly differently.}}&lt;br /&gt;
[[Category:Security]]&lt;/div&gt;</summary>
		<author><name>Arveex</name></author>
	</entry>
</feed>