Skip to contentSkip to conversation

EDAC, sb_edac: Fix reporting wrong DIMM when patrol scrubber finds error

PATCH Superseded Borislav Petkov 1 participant 1 message Sep 6, 2018 EDAC-core

v1 of 4 Superseded Latest is v4 →

lore
Share & tools
lore

Borislav Petkov

author maintainer
#0 lore raw

PATCH 3/3 EDAC, sb_edac: Fix reporting wrong DIMM when patrol scrubber finds error

Quoted 1 line · Qiuxu

The sb_edac EDAC driver this patches fix for.

I know which driver! Your commit message formulation needs fixing.

Quoted 10 lines

Sorry for the ambiguity. "ha" is the acronym for "Home Agent" that is a hardware component interfaces with cache and directly with its owner iMC (Integrated Memory Controller). We use the property that the index of "ha" equals to iMC's.

Quoted from below datasheet section 5 (here "Bbox" is home agent, and "Mbox" is iMC):
"The Bboxes receive Home channel request and snoop responses from caching agents, and provides data response and completion to the system via Bbox to Router connection. Read and write commands to memory go out of the Bbox to the Memory Controller (MBox)."
https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/xeon-e7-8800-4800-2800-families-vol-2-datasheet.pdf

And there is also block diagram Figure 5-1 there, hope it's useful for understanding.

Now take the gist of all that knowledge and synthesize in a proper comment above it, *shortly* explaining what this function does.

Quoted 3 lines
Quoted 1 line

You need to check the get_ha pointer before calling it because KNIGHTS_LANDING assigns NULL to it.

    There is already a check whether it's KNIGHT_LANDING case before calling "get_memory_error_data_from_mce() -> get_ha()".

Regardless, pls add that check anyway in case someone adds new CPU support and forgets to add that function.

Thx.