Blame SOURCES/0055-rasdaemon-use-MCA-error-msg-as-error_msg.patch

71e2cb
From 9136d7422a6b53c50a920f3dd2539bf7fcd4fdf5 Mon Sep 17 00:00:00 2001
71e2cb
From: Seiichi Ikarashi <s.ikarashi@jp.fujitsu.com>
71e2cb
Date: Fri, 12 Jun 2015 06:35:37 -0300
71e2cb
Subject: [PATCH 4/5] rasdaemon: use MCA error msg as error_msg
71e2cb
71e2cb
In the case of machine-checks which do not have a model-specific MCA
71e2cb
error code but have an architectural code only, mce_event.error_msg
71e2cb
becomes empty then you don't know what happened.
71e2cb
71e2cb
(snip)
71e2cb
MCE records summary:
71e2cb
	1  errors
71e2cb
          ^
71e2cb
          empty!
71e2cb
71e2cb
(snip)
71e2cb
MCE events:
71e2cb
1 2015-06-12 00:21:46 +0900 error: , mcg mcgstatus= 0, mci Corrected_error
71e2cb
                                  ^
71e2cb
                                empty!
71e2cb
71e2cb
Error_enabled, mcgcap=0x07000c16, status=0x9c0000000000017a, addr=0x204fffffff, misc=0x4004000000000080, walltime=0x557b0db2, cpu=0x00000001, cpuid=0x000306f3, apicid=0x00000002, bank=0x00000003
71e2cb
71e2cb
In such a case, let's use the content of mcastatus_msg as error_msg
71e2cb
instead.
71e2cb
71e2cb
(snip)
71e2cb
MCE records summary:
71e2cb
	1 Generic CACHE Level-2 Eviction Error errors
71e2cb
(snip)
71e2cb
MCE events:
71e2cb
1 2015-06-12 02:39:04 +0900 error: Generic CACHE Level-2 Eviction Error, mcg mcgstatus= 0, mci Corrected_error Error_enabled, mcgcap=0x07000c16, status=0x9c0000000000017a, addr=0x204fffffff, misc=0x4004000000000080, walltime=0x557b1f22, cpu=0x00000001, cpuid=0x000306f3, apicid=0x00000002, bank=0x00000003
71e2cb
71e2cb
Signed-off-by: Seiichi Ikarashi <s.ikarashi@jp.fujitsu.com>
71e2cb
Acked-by: Aristeu Rozanski <aris@redhat.com>
71e2cb
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
71e2cb
---
71e2cb
 ras-mce-handler.c | 3 +++
71e2cb
 1 file changed, 3 insertions(+)
71e2cb
71e2cb
diff --git a/ras-mce-handler.c b/ras-mce-handler.c
71e2cb
index 07252a0..3976f90 100644
71e2cb
--- a/ras-mce-handler.c
71e2cb
+++ b/ras-mce-handler.c
71e2cb
@@ -411,6 +411,9 @@ int ras_mce_event_handler(struct trace_seq *s,
71e2cb
 	if (rc)
71e2cb
 		return rc;
71e2cb
 
71e2cb
+	if (!*e.error_msg && *e.mcastatus_msg)
71e2cb
+		mce_snprintf(e.error_msg, "%s", e.mcastatus_msg);
71e2cb
+
71e2cb
 	report_mce_event(ras, record, s, &e);
71e2cb
 
71e2cb
 #ifdef HAVE_SQLITE3
71e2cb
-- 
71e2cb
1.8.3.1
71e2cb