On Mon, 2017-08-14 at 18:24 +0200, Borislav Petkov wrote: > On Mon, Aug 14, 2017 at 03:57:35PM +0000, Kani, Toshimitsu wrote: > > Hmm... Sorry, I failed to see how your patchset solved it. Would > > you mind to explain how it is done? > > +static int __init ghes_edac_register(void) > { > + struct ghes_edac_pvt *pvt = ghes_pvt; > > Only one local ghes_pvt structure. > > And you handle multiple calls into ghes_edac_register() by exiting > all those which are not the first one as the first one already did > all the init. Right, but the issue is how [ghes_edac_]report_mem_error() protects from possible concurrent calls from multiple GHES sources when there is only a single mci. Thanks, -Toshi ��.n��������+%������w��{.n�����{�����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f