xucode: Userland microcode updater for macOS

Discussion in 'Mac Pro' started by parrotgeek1, Apr 11, 2018.

Tags:
  1. parrotgeek1, Apr 11, 2018
    Last edited: Sep 21, 2018

    parrotgeek1 macrumors 6502

    Joined:
    Jun 14, 2016
    Location:
    CA, USA
    #1
    xucode
    Userland microcode updater for macOS

    Download: https://parrotgeek.com/xucode.html

    To use this program, you must copy the folder intel-ucode from Intel's "Linux Processor Microcode Data File" to /usr/local/share/xucode/intel-ucode!
    To install or update it:
    1. download xucode.zip, extract it
    2. double click install.command
    3. reboot
    If you are updating from the first version of xucode, please run:
    sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.ucupdate.plist

    To uninstall it:
    1. double click uninstall.command
    2. reboot
     
  2. eksu macrumors regular

    Joined:
    Aug 3, 2017
    #2
    Can you maybe document this a bit more; did you reimplement the solution from Red Hat onto MacOS?
     
  3. parrotgeek1 thread starter macrumors 6502

    Joined:
    Jun 14, 2016
    Location:
    CA, USA
    #3
    I used code from that, yes, but actually it just converts Intel's microcode.dat into a format that Apple's built in ucupdate command can understand, extracts the appropriate part for your CPU, and runs ucupdate on that file .
     
  4. tsialex macrumors 68030

    tsialex

    Joined:
    Jun 13, 2016
    Location:
    Brazil
    #4
    @parrotgeek1 did you take look on the new microcodes from 20180703 and 20180425? Dat file is missing for the last two releases.
     
  5. parrotgeek1 thread starter macrumors 6502

    Joined:
    Jun 14, 2016
    Location:
    CA, USA
    #5
    Thanks, I kind of forgot about this project
     
  6. parrotgeek1 thread starter macrumors 6502

    Joined:
    Jun 14, 2016
    Location:
    CA, USA
    #6
    Updated to v1.0 with a new loading method and support for new microcodes. (You need to provide them yourself)
     
  7. Larsvonhier, Nov 13, 2018
    Last edited: Nov 13, 2018

    Larsvonhier macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #7
    What is the recommended way to check the microcode version?

    Terminal command:
    sysctl -a | grep microcode

    This just gives a 2..4 digit number - how does it relate to the current intel files?
     
  8. tsialex macrumors 68030

    tsialex

    Joined:
    Jun 13, 2016
    Location:
    Brazil
    #8
    Apple uses decimal to show the version and Intel uses hexa, just convert and you will know if its the same.

    I prefer to use ucupdate, shows the signature and in hexa, like this:

    Code:
    /usr/libexec/ucupdate -q
    
     
  9. Larsvonhier macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #9
    Hm. I get 2571 (dec) or 0xA0B after I did the update on a C2D machine. Similar machine without the update shows same numbers.
    I took the 20180807 version from intel´s site, the shell command did not complain, wrote something about conversion and RETURN for reboot, which I did...
     
  10. tsialex macrumors 68030

    tsialex

    Joined:
    Jun 13, 2016
    Location:
    Brazil
    #10
    Apple has the UCUPDATE daemon that downloads and installs the microcode automatically, from Apple servers like XProtect.
     
  11. Larsvonhier macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #11
    I understand, but either both machines already had the latest microcode (which I doubt, one is on High Sierra, one already on Mojave) or the script does not work but does not output any errors.
    Is there any readable list of microcodes that I could consult as reference for what to expect on which processor?
     
  12. tsialex macrumors 68030

    tsialex

    Joined:
    Jun 13, 2016
    Location:
    Brazil
    #12
    Intel Microcode Revision Guide, but C2D processors don't get updates anymore.
     
  13. Larsvonhier macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #13
    I see - thanks! Will try on a Xeon machine tomorrow ;-)
     
  14. tsialex macrumors 68030

    tsialex

    Joined:
    Jun 13, 2016
    Location:
    Brazil
    #14
    MP5,1 with 140.0.0.0.0 has the microcodes indicated in the last Intel Microcode Revision table:

    Screen Shot 2018-11-13 at 20.10.34.png Screen Shot 2018-11-13 at 20.10.58.png
     
  15. Larsvonhier macrumors 6502

    Larsvonhier

    Joined:
    Aug 21, 2016
    Location:
    Germany, Black Forest
    #15
    Still got a question, not sure I got the procedure right...
    I supposedly put the contents of the uncompressed intel .tgz file (lots of small separate files and the containing folder "intel-ucode") into
    /usr/local/share/xucode/
    and then run the install.command (do I have to put it there too or can it be run from anywhere?)

    My observation is that before hitting RETURN for reboot, no "extracted" files show up in addition, everything seems unmodified?!
    On a i7 machine, I found a microcode.dat file of 5.1MB size in some folder in .../share/...
    This must have been placed there by some previous OS update, right? I´d have expected that the install-command would create such a file also?
     

Share This Page