<div dir="ltr">no, that is not early enough on some CPUs.<div><br></div><div>ron</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jul 8, 2014 at 11:20 AM, yhlu <span dir="ltr"><<a href="mailto:yinghailu@gmail.com" target="_blank">yinghailu@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On Tue, Jul 8, 2014 at 10:39 AM, ron minnich <<a href="mailto:rminnich@gmail.com">rminnich@gmail.com</a>> wrote:<br>

> you can  no longer update microcode after the kernel boots (on modern Intel<br>
> CPUs). It has to happen before you do Cache As Ram in many cases, or you'll<br>
> get some pretty unpleasant consequences.<br>
<br>
</div>so even microcode_early will not help?<br>
<br>
config MICROCODE_EARLY<br>
        bool "Early load microcode"<br>
        depends on MICROCODE=y && BLK_DEV_INITRD<br>
        select MICROCODE_INTEL_EARLY if MICROCODE_INTEL<br>
        select MICROCODE_AMD_EARLY if MICROCODE_AMD<br>
        default y<br>
        help<br>
          This option provides functionality to read additional microcode data<br>
          at the beginning of initrd image. The data tells kernel to load<br>
          microcode to CPU's as early as possible. No functional change if no<br>
          microcode data is glued to the initrd, therefore it's safe to say Y.<br>
</blockquote></div><br></div>