# [SOLVED] intel microcode error - mce: [Hardware Error]

## nubiocicarini

I set up the intel microcode according to the gentoo wiki and am getting the following error checking:

```
dmesg | grep microcode

[    0.000000] microcode: microcode updated early to revision 0x25, date = 2019-02-26

[    0.238527] mce: [Hardware Error]: PROCESSOR 0:40651 TIME 1566235451 SOCKET 0 APIC 0 microcode 25

[    1.510286] microcode: sig=0x40651, pf=0x40, revision=0x25

[    1.511332] microcode: Microcode Update Driver: v2.2.
```

The description of the processor:

```
uname -a

Linux railce 4.19.66-gentoo #1 SMP Sat Aug 17 20:45:09 -03 2019 x86_64 Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz GenuineIntel GNU/Linux
```

```
iucode_tool -S

iucode_tool: system has processor(s) with signature 0x00040651
```

```
iucode_tool -S -l /lib/firmware/intel-ucode/*

iucode_tool: system has processor(s) with signature 0x00040651

microcode bundle 1: /lib/firmware/intel-ucode/06-45-01

selected microcodes:

  001/001: sig 0x00040651, pf_mask 0x72, 2019-02-26, rev 0x0025, size 21504
```

Does anyone have any solutions to the problem?Last edited by nubiocicarini on Mon Aug 19, 2019 9:07 pm; edited 1 time in total

----------

## skellr

iucode_tool hasn't worked right for me in a while...

I just build the microcode as a binary blob into the kernel.

for example:

```
dmesg | grep smpboot

[    0.037495] smpboot: Allowing 12 CPUs, 0 hotplug CPUs

[    0.146979] smpboot: CPU0: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (family: 0x6, model: 0x9e, stepping: 0xa)

[    0.163926] smpboot: Max logical packages: 2

[    0.163927] smpboot: Total of 6 processors activated (26496.00 BogoMIPS)
```

We can find (family: 0x6, model: 0x9e, stepping: 0xa)

Then look in /lib/firmware/intel-ucode for 06-9e-0a and add it to CONFIG_EXTRA_FIRMWARE in the kernel configuration.

Device Drivers  ---> Generic Driver Options  --->  Firmware loader  --->  CONFIG_EXTRA_FIRMWARE="intel-ucode/06-9e-0a"

----------

## nubiocicarini

Yes I built as binary:

```
cat /usr/src/linux/.config | grep "^CONFIG_EXTRA_FIRMWARE"

CONFIG_EXTRA_FIRMWARE="intel-ucode/06-45-01"

CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
```

The smboot scan returned without errors.

```
dmesg | grep smpboot

[    0.039199] smpboot: Allowing 8 CPUs, 4 hotplug CPUs

[    0.251004] smpboot: CPU0: Intel(R) Core(TM) i3-4005U CPU @ 1.70GHz (family: 0x6, model: 0x45, stepping: 0x1)

[    0.256425] smpboot: Max logical packages: 2

[    0.256425] smpboot: Total of 4 processors activated (13568.22 BogoMIPS)
```

So I can assume that the output from iucode_tool is invalid and the microcode is working correctly?

----------

## skellr

 *nubiocicarini wrote:*   

> Yes I built as binary:
> 
> ```
> cat /usr/src/linux/.config | grep "^CONFIG_EXTRA_FIRMWARE"
> 
> ...

 

It should be reporting the microcode update on the fist line of dmesg. try dmesg | head -n10

If something is wrong it will tell you there.

----------

## nubiocicarini

The microcode information is there:

```
dmesg | head -n10

[    0.000000] microcode: microcode updated early to revision 0x25, date = 2019-02-26

[    0.000000] Linux version 4.19.66-gentoo (root@railce) (gcc version 8.3.0 (Gentoo 8.3.0-r1 p1.1)) #1 SMP Sat Aug 17 20:45:09 -03 2019

[    0.000000] Command line: BOOT_IMAGE=/kernel-genkernel-x86_64-4.19.66-gentoo root=UUID=6f47d901-1f97-4a1d-bb7d-b507cb3a654b ro

[    0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'

[    0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'

[    0.000000] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'

[    0.000000] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256

[    0.000000] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'standard' format.

[    0.000000] BIOS-provided physical RAM map:

[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000006efff] usable
```

So it seems that everything goes well.

Thanks a lot for the help.

----------

## Hu

Personally, I would be wary of a system that persistently reports an MCE.  I would investigate to find out whether there are any known errata that cause an MCE when nothing is actually wrong, and if not, investigate the severity of the reported MCE.

----------

## skellr

 *Hu wrote:*   

> Personally, I would be wary of a system that persistently reports an MCE.  I would investigate to find out whether there are any known errata that cause an MCE when nothing is actually wrong, and if not, investigate the severity of the reported MCE.

 

It only reports an MCE when using iucode_tool. Not sure how long it has been going on for now... Abandon-ware, IMO.

----------

## nubiocicarini

So far the system has not failed.

----------

