mirror of
https://github.com/torvalds/linux.git
synced 2024-11-18 01:51:53 +00:00
x86/mce: Replace hard coded hex constants with symbolic defines
Magic constants like 0x0134 in code just invite questions on where they come from, what they mean, can they be changed. Provide #defines for the architecturally defined MCACOD values with a reference to the Intel Software Developers manual which describes them. Signed-off-by: Tony Luck <tony.luck@intel.com>
This commit is contained in:
parent
5f7b88d51e
commit
08dda402d6
@ -56,6 +56,12 @@ static struct severity {
|
|||||||
#define MCI_UC_SAR (MCI_STATUS_UC|MCI_STATUS_S|MCI_STATUS_AR)
|
#define MCI_UC_SAR (MCI_STATUS_UC|MCI_STATUS_S|MCI_STATUS_AR)
|
||||||
#define MCI_ADDR (MCI_STATUS_ADDRV|MCI_STATUS_MISCV)
|
#define MCI_ADDR (MCI_STATUS_ADDRV|MCI_STATUS_MISCV)
|
||||||
#define MCACOD 0xffff
|
#define MCACOD 0xffff
|
||||||
|
/* Architecturally defined codes from SDM Vol. 3B Chapter 15 */
|
||||||
|
#define MCACOD_SCRUB 0x00C0 /* 0xC0-0xCF Memory Scrubbing */
|
||||||
|
#define MCACOD_SCRUBMSK 0xfff0
|
||||||
|
#define MCACOD_L3WB 0x017A /* L3 Explicit Writeback */
|
||||||
|
#define MCACOD_DATA 0x0134 /* Data Load */
|
||||||
|
#define MCACOD_INSTR 0x0150 /* Instruction Fetch */
|
||||||
|
|
||||||
MCESEV(
|
MCESEV(
|
||||||
NO, "Invalid",
|
NO, "Invalid",
|
||||||
@ -112,12 +118,12 @@ static struct severity {
|
|||||||
#ifdef CONFIG_MEMORY_FAILURE
|
#ifdef CONFIG_MEMORY_FAILURE
|
||||||
MCESEV(
|
MCESEV(
|
||||||
KEEP, "HT thread notices Action required: data load error",
|
KEEP, "HT thread notices Action required: data load error",
|
||||||
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCI_ADDR|MCACOD, MCI_UC_SAR|MCI_ADDR|0x0134),
|
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCI_ADDR|MCACOD, MCI_UC_SAR|MCI_ADDR|MCACOD_DATA),
|
||||||
MCGMASK(MCG_STATUS_EIPV, 0)
|
MCGMASK(MCG_STATUS_EIPV, 0)
|
||||||
),
|
),
|
||||||
MCESEV(
|
MCESEV(
|
||||||
AR, "Action required: data load error",
|
AR, "Action required: data load error",
|
||||||
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCI_ADDR|MCACOD, MCI_UC_SAR|MCI_ADDR|0x0134),
|
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCI_ADDR|MCACOD, MCI_UC_SAR|MCI_ADDR|MCACOD_DATA),
|
||||||
USER
|
USER
|
||||||
),
|
),
|
||||||
#endif
|
#endif
|
||||||
@ -129,11 +135,11 @@ static struct severity {
|
|||||||
/* known AO MCACODs: */
|
/* known AO MCACODs: */
|
||||||
MCESEV(
|
MCESEV(
|
||||||
AO, "Action optional: memory scrubbing error",
|
AO, "Action optional: memory scrubbing error",
|
||||||
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|0xfff0, MCI_UC_S|0x00c0)
|
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCACOD_SCRUBMSK, MCI_UC_S|MCACOD_SCRUB)
|
||||||
),
|
),
|
||||||
MCESEV(
|
MCESEV(
|
||||||
AO, "Action optional: last level cache writeback error",
|
AO, "Action optional: last level cache writeback error",
|
||||||
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCACOD, MCI_UC_S|0x017a)
|
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCACOD, MCI_UC_S|MCACOD_L3WB)
|
||||||
),
|
),
|
||||||
MCESEV(
|
MCESEV(
|
||||||
SOME, "Action optional: unknown MCACOD",
|
SOME, "Action optional: unknown MCACOD",
|
||||||
|
Loading…
Reference in New Issue
Block a user