|
|
71e2cb |
From fa6260eb1304c6c829af177ab4aa1937db36fab1 Mon Sep 17 00:00:00 2001
|
|
|
71e2cb |
From: Ashok Raj <ashok.raj@intel.com>
|
|
|
71e2cb |
Date: Fri, 5 Jun 2015 13:32:47 -0300
|
|
|
71e2cb |
Subject: [PATCH 1/5] x86, rasdaemon: Add support to log Local Machine Check
|
|
|
71e2cb |
Exception (LMCE)
|
|
|
71e2cb |
|
|
|
71e2cb |
Local Machine Check Exception allows certain errors to be signaled to
|
|
|
71e2cb |
only the affected logical processor. This change captures them for
|
|
|
71e2cb |
rasdaemon.
|
|
|
71e2cb |
|
|
|
71e2cb |
log:Changes to rasdaemon to support new architectural changes to MCE
|
|
|
71e2cb |
|
|
|
71e2cb |
Changet to rasdaemon to support new architectural extentions in Intel
|
|
|
71e2cb |
CPUs.
|
|
|
71e2cb |
|
|
|
71e2cb |
Signed-off-by: Ashok Raj <ashok.raj@intel.com>
|
|
|
71e2cb |
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
|
|
|
71e2cb |
---
|
|
|
71e2cb |
mce-intel.c | 2 ++
|
|
|
71e2cb |
ras-mce-handler.h | 1 +
|
|
|
71e2cb |
2 files changed, 3 insertions(+)
|
|
|
71e2cb |
|
|
|
71e2cb |
diff --git a/mce-intel.c b/mce-intel.c
|
|
|
71e2cb |
index 3684602..3503c6a 100644
|
|
|
71e2cb |
--- a/mce-intel.c
|
|
|
71e2cb |
+++ b/mce-intel.c
|
|
|
71e2cb |
@@ -185,6 +185,8 @@ static void decode_mcg(struct mce_event *e)
|
|
|
71e2cb |
mce_snprintf(e->mcgstatus_msg, "EIPV");
|
|
|
71e2cb |
if (mcgstatus & MCG_STATUS_MCIP)
|
|
|
71e2cb |
mce_snprintf(e->mcgstatus_msg, "MCIP");
|
|
|
71e2cb |
+ if (mcgstatus & MCG_STATUS_LMCE)
|
|
|
71e2cb |
+ mce_snprintf(e->mcgstatus_msg, "LMCE");
|
|
|
71e2cb |
}
|
|
|
71e2cb |
|
|
|
71e2cb |
static void bank_name(struct mce_event *e)
|
|
|
71e2cb |
diff --git a/ras-mce-handler.h b/ras-mce-handler.h
|
|
|
71e2cb |
index 28aad00..13b8f52 100644
|
|
|
71e2cb |
--- a/ras-mce-handler.h
|
|
|
71e2cb |
+++ b/ras-mce-handler.h
|
|
|
71e2cb |
@@ -139,6 +139,7 @@ void tulsa_decode_model(struct mce_event *e);
|
|
|
71e2cb |
#define MCG_STATUS_RIPV (1ULL<<0) /* restart ip valid */
|
|
|
71e2cb |
#define MCG_STATUS_EIPV (1ULL<<1) /* eip points to correct instruction */
|
|
|
71e2cb |
#define MCG_STATUS_MCIP (1ULL<<2) /* machine check in progress */
|
|
|
71e2cb |
+#define MCG_STATUS_LMCE (1ULL<<3) /* local machine check signaled */
|
|
|
71e2cb |
|
|
|
71e2cb |
/* Those functions are defined on per-cpu vendor C files */
|
|
|
71e2cb |
int parse_intel_event(struct ras_events *ras, struct mce_event *e);
|
|
|
71e2cb |
--
|
|
|
71e2cb |
1.8.3.1
|
|
|
71e2cb |
|