Re: [PATCH 3/3] mce: acpi/apei: trace: Enable ghes memory error traceevent

From: Naveen N. Rao
Date: Mon Aug 12 2013 - 08:42:10 EST


On 08/12/2013 05:03 PM, Mauro Carvalho Chehab wrote:
Em Sat, 10 Aug 2013 20:03:22 +0200
Borislav Petkov <bp@xxxxxxxxx> escreveu:

On Thu, Aug 08, 2013 at 04:38:22PM -0300, Mauro Carvalho Chehab wrote:
Em Thu, 08 Aug 2013 23:57:51 +0530
"Naveen N. Rao" <naveen.n.rao@xxxxxxxxxxxxxxxxxx> escreveu:

Enable memory error trace event in cper.c

Why do we need to do that? Memory error events are already handled
via edac_ghes module,

If APEI gives me all the required information in order to deal with the
hardware error - and it looks like it does - then the additional layer
of ghes_edac is not needed.

APEI is just the mechanism that collects the data, not the mechanism
that reports to userspace.

I think what Boris is saying is that ghes_edac isn't adding anything more here given what we get from APEI structures. So, there doesn't seem to be a need to add dependency on edac for this purpose.

Further, ghes_edac seems to require EDAC_MM_EDAC to be compiled into the kernel (not a module). So, more dependencies.


The current implementation is that APEI already reports those errors
via ghes_edac driver. It also reports the very same error via MCE
(although the APEI interface to MCE is currently broken for everything
that it is not Nehalem-EX - as it basically emulates the MCE log for
that specific architecture).

So, I looked at ghes_edac and it basically seems to boil down to trace_mc_event. But, this only seems to expose the APEI data as a string and doesn't look to really make all the fields available to user-space in a raw manner. Not sure how well this can be utilised by a user-space tool. Do you have suggestions on how we can do this?

Thanks,
Naveen

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/