Announcement

Collapse
No announcement yet.

Ubuntu 15.04 Will Attempt To Better Update CPU Microcodes

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Ubuntu 15.04 Will Attempt To Better Update CPU Microcodes

    Phoronix: Ubuntu 15.04 Will Attempt To Better Update CPU Microcodes

    With next month's release of Ubuntu 15.04, CPU microcode updates will attempted to be better handled...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Recently I installed ubuntu 15.04 on my Athlon BE2350 PC and I got a CPU microcode update in Additional drivers. I had no idea what it was and installed it ... I still don't know what it is ... lol

    Comment


    • #3
      Originally posted by plantroon View Post
      Recently I installed ubuntu 15.04 on my Athlon BE2350 PC and I got a CPU microcode update in Additional drivers. I had no idea what it was and installed it ... I still don't know what it is ... lol
      "The microcode data file contains the latest microcode definitions for all Intel processors. Intel releases microcode updates to correct processor behavior as documented in the respective processor specification updates. While the regular approach to getting this microcode update is via a BIOS upgrade, Intel realizes that this can be an administrative hassle. The Linux operating system and VMware ESX products have a mechanism to update the microcode after booting. For example, this file will be used by the operating system mechanism if the file is placed in the /etc/firmware directory of the Linux system."

      https://wiki.archlinux.org/index.php/microcode (link to intel website doesn't work atm)

      Comment


      • #4
        what exactly is this process of microcode updating and how is it happen?

        Comment


        • #5
          I thought that was a matter of the kernel. But then I am gentoo and compile my own kernels and put everything right in. I have few modules and never had an initrd (what is that good for anyway ). And I mean, what means "better microcode updates"? You can probably ship the latest blob and maybe somehow improve loading at kernel boot time but the microcode itself is a blob provided by the CPU vendor so you can't really change much about it. And a lot of CPUs/APUs today even want this one crpytographically signed, for mixed reasons. :/
          Stop TCPA, stupid software patents and corrupt politicians!

          Comment


          • #6
            Are microcode updates temporary or permanent? Or I guess a better question; do they just affect the running session, or does it persist after reboots?

            I heard a while back that Intel was distributing microcode updates to prevent overclocking on certain processors that some motherboard vendors unlocked; not sure how true that is, but as to how concerning it might be might depend on the above.

            Comment


            • #7
              Modern CPUs apparently have some kind of "firmware" (microcode) that can be updated at boot time or later on, but it's not a persistent update, so it needs to be done on every boot.

              E.g. there's a microcode update for one of Intel's recent CPU generations (haswell?) that disables one CPU feature because it is buggy. For this microcode update, it's important to apply it at boot time, because some software can't handle CPU features that suddenly go missing, so the update may cause crashes if applied too late (when the software that uses the disabled CPU feature is already running).

              Microcode updates can probably fix bugs as well, instead of just disabling things.

              The "normal" way to get microcode updates is through BIOS updates, so the new BIOS applies new microcode at boot time. But the same can be done through the kernel, a BIOS update is not actually necessary. And that's what Ubuntu probably wants to introduce. I had to do some hacking with grub config files recently, to get the latest microcode for my Arch box.

              Comment


              • #8
                Originally posted by Azrael5 View Post
                what exactly is this process of microcode updating and how is it happen?
                [disclaimer: the following is as far as I understood]
                There might be better people here to explain but ?code is kind of a firmware that runs inside the CPU on a very low level. Some of that is only used during initialization, some might run all the time. Often APUs are more complex and include more functions than the pure computing unit but video decoders, encoders, USB controllers and so on, and you collect all that code under the label "firmware". Now the CPU comes with no or a firmware built in that is read every boot. Some obtain this from the BIOS at boot time. But there is also the option to give the CPU/APU an updated firmware (bugfixes, security issues, enhanced performance and so on) - and the operating system's kernel can offer a more recent firmware to the CPU. If the CPU accepts this newer blob should then be loaded and executed.
                The downside is - it is still a proprietary blob. And: Today the often have a crypto signature, so you can't load your own firmware - unless you have the key. Which you haven't.
                The pro side is that no malware can load itself at lowest level and live inside the CPU and do nasty stuff from there. The con side is: No freedom firmware, no own firmware, you have to live with what the CPU manufacturer provides you. You also do not have control over this. That means: Firmware/Microcode runs at lowest level, can achieve SMM (!) and this way phone home totally transparent to you, your OS and your anti-malware solution. It is like somebody stops time and exchanges the chair you sit on (under your ass! ) and puts a new chair there. And you will not notice it. Also this firmware can limit the functions of your CPU. Nvidia and intel are actually doing this or at least planning to do so. Intel wanted to sell CPUs and you had to pay extra to "release" certain functions or better speed. Nvidia might pretend the GPU to be a newer model but it is just an ooold chip rebranded. Or limit GPU functions. (The 3.5 GB desaster was hardware, though )
                Stop TCPA, stupid software patents and corrupt politicians!

                Comment


                • #9
                  Originally posted by Espionage724 View Post
                  Are microcode updates temporary or permanent? Or I guess a better question; do they just affect the running session, or does it persist after reboots?
                  Depends.
                  Not permanent by default. Can be made permanent if the CPU has some kind of EEPROM or if the update is stored in the BIOS-EEPROM from which the code is loaded at boot. (E.g. AMD's AGESA is also included in BIOS blobs, or in coreboot releases and you can make the update "permanent" - unless you downgrade the BIOS.)
                  Stop TCPA, stupid software patents and corrupt politicians!

                  Comment


                  • #10
                    Originally posted by Espionage724 View Post
                    Are microcode updates temporary or permanent? Or I guess a better question; do they just affect the running session, or does it persist after reboots?

                    I heard a while back that Intel was distributing microcode updates to prevent overclocking on certain processors that some motherboard vendors unlocked; not sure how true that is, but as to how concerning it might be might depend on the above.
                    Updates are temporary. The microcode update is sent to the CPU by the BIOS or kernel at boot time. If the microcode update is built in to the BIOS then it will appear to persist over a reboot, because it is stored in the BIOS EPROM and the BIOS is re-sending it to the CPU on every boot.

                    Intel did once issue a microcode update to stop motherboard manufacturers using H and B series chipsets for overclocked processors: Intel updates microcode to block H87/B85 overclocking. It's really odd that Intel had to rely on a technical prevention measure rather than explicitly forbidding overclocking in the license for those chipsets.

                    Comment

                    Working...
                    X