[coreboot] Classification of blobs and respecting your freedom

Stefan Reinauer stefan.reinauer at coreboot.org
Thu Mar 27 01:18:57 CET 2014

* David Hendricks <dhendrix at google.com> [140326 20:25]:
> On Wed, Mar 26, 2014 at 9:47 AM, ron minnich <rminnich at gmail.com> wrote:
>     I think it's good and well written. I'd replace your 'panic levels' with 4
>     simple classifications and leave it at that.
> Yep, good write-up overall.
> I never liked the "panic level" rating, or at least the numbers. It seems
> rather arbitrary. As much as folks dislike binary MRC, for example, I wouldn't
> even put it in the same ballpark as the management engine since the ME is an
> always-on, persistent, non-ISA blob with similar access capabilities. Scoring
> them one point apart at the top of a scale from 1 to "9000+" seems to diminish
> those important distinctions.

There is some more to that, even.

* Also, with an NDA in place, Intel will freely give you the System Agent
  (MRC) source code. That will never happen with the ME firmware

* MRC is usually 100-300K of binary code depending on the compile time
  options. ME firmware is 1.5MB - 7MB.

* MRC is not digitally signed, so it can be replaced, ME firmware can

* MRC does not contain network drivers or can read your memory and io at
  any time during system run time. ME firmware can. (Yes, you mentioned

* There is no special NSA version of the MRC.

So, basically, the ME is both harder (impossible) to replace or run
without and has much more control over the system. It's an unfortunate
combo, to say the least.

The MRC is about the same classification as VGA option roms. If you
don't run it, parts of your system won't work. But it's possible to
replace it by throwing enough man power at it.


More information about the coreboot mailing list