Messages in this thread | | | Date | Thu, 30 Dec 2021 12:36:44 +0100 | From | Borislav Petkov <> | Subject | Re: [PATCH v2 1/2] EDAC/amd64: Check register values from all UMCs |
| |
On Thu, Dec 16, 2021 at 04:08:18PM +0000, Yazen Ghannam wrote: > No, that's a good question. And actually the assumption is incorrect. It is > allowed to have different DIMM types in a system though all DIMMs on a single > UMC must match.
Oh fun, really?!
So a single system can have DDR4 *and* DDR5 on the same board?!
So then that
pvt->dram_type
is insufficient to store the DIMM type for a pvt. If you have multiple UMCs on a pvt and all have different type DIMMs, then you need the relevant DIMM type when you dump it in sysfs...
Which then means, you need ->dram_type to be per UMC...
And also, I'm assuming the hw already enforces that DIMMs on a single UMC must match - it simply won't boot if they don't so you don't have to enforce that, at least.
> Do you recommend a follow up patch or should this one be reworked?
This one is insufficient, I'm afraid.
One way to address this is, you could use pvt->umc at the places where dram_type is used and assign directly to the dimm->mtype thing. But then you'd need a way to map each struct dimm_info *dimm to the UMC so that you can determine the correct DIMM type.
Which would make pvt->dram_type redundant and can be removed.
Or you might have a better idea...
HTH.
-- Regards/Gruss, Boris.
https://people.kernel.org/tglx/notes-about-netiquette
| |