On Mon, Aug 14, 2017 at 08:17:54PM +0000, Kani, Toshimitsu wrote: > I think the current code design of allocating mci & ghes_edac_pvt for > each GHES source entry makes sense. And I don't. > edac_raw_mc_handle_error() also has the same expectation that the call > is serialized per mci. There's no such thing as "per mci" if the driver scans *all DIMMs* per register call. If it does it this way, then it is only one mci. It is actually wrong right now because if you register more than one mci and you do edac_inc_ce_error()/edac_inc_ue_error(), potentially different counters get incremented for the same errors. Exactly because each instance registered is *wrongly* responsible for all DIMMs on the system. So you either need to partition the DIMMs per mci (which I can't imagine how it would work) or introduce locking when incrementing the mci-> counters. -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply. -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html