IMC(4D) Devices IMC(4D)

NAME


imc - Intel memory controller driver

SYNOPSIS


/dev/mc/mc*

DESCRIPTION


The imc driver interfaces with the memory controller found on certain
generations of Intel CPUs and provides a means for decoding physical
addresses to the corresponding memory device. The imc driver plugs
into the operating systems fault management framework providing
additional details to the system about the memory topology and the
ability to decode physical addresses into the corresponding portion of
the memory hierarchy.

The imc driver is supported on the following Intel processors:

+o Sandy Bridge E5 and E7 Xeon Processors

+o Ivy Bridge E5 and E7 Xeon Processors

+o Haswell E5 and E7 Xeon Processors

+o Broadwell E5 and E7 Xeon Processors

+o Skylake Xeon Scalable Processors

+o Cascade Lake Xeon Scalable Processors

+o Broadwell and Skylake Xeon-D processors

Other lines involving the above microarchitectures, such as Xeon E3
branded processors, are not supported as they do not provide the
necessary hardware support.

The imc driver is a pseudo-device driver that amalgamates all of the
different imcstub(4D) instances into a coherent view. The imcstub(4D)
driver attaches to all of the different PCI devices that the processor
exposes.

One challenge with the imc driver is the Intel Enhanced Machine Check
Architecture v2 (EMCAv2). Many vendors use EMCAv2 to hide memory
errors from the operating system. Such systems limit the effectiveness
of the imc driver and the fault management architecture by hiding
correctable and uncorrectable DIMM errors from the operating system.

The imc driver has a few limitations. Currently it does not always
properly handle lockstep and mirroring mode, particularly in variants
that are common on Skylake and newer systems. It also does not
properly handle cases where Intel Optane NVDIMMs are in use on the
memory bus.

ARCHITECTURE


The imc driver is only supported on specific Intel x86 systems.

FILES


/platform/i86pc/kernel/drv/amd64/imc
64-bit device driver (x86).

/platform/i86pc/kernel/drv/imc.conf
Driver configuration file.

SEE ALSO


imcstub(4D), fmadm(8), fmdump(8)

illumos June 25, 2019 illumos

tribblix@gmail.com :: GitHub :: Privacy