|
@@ -99,41 +99,40 @@ static struct severity {
|
|
|
),
|
|
|
MCESEV(
|
|
|
KEEP, "Non signalled machine check",
|
|
|
- SER, MASK(MCI_STATUS_S, 0)
|
|
|
+ SER, BITCLR(MCI_STATUS_S)
|
|
|
),
|
|
|
|
|
|
/* AR add known MCACODs here */
|
|
|
MCESEV(
|
|
|
PANIC, "Action required with lost events",
|
|
|
- SER,
|
|
|
- MASK(MCI_STATUS_OVER|MCI_UC_SAR, MCI_STATUS_OVER|MCI_UC_SAR)
|
|
|
+ SER, BITSET(MCI_STATUS_OVER|MCI_UC_SAR)
|
|
|
),
|
|
|
MCESEV(
|
|
|
- PANIC, "Action required; unknown MCACOD",
|
|
|
+ PANIC, "Action required: unknown MCACOD",
|
|
|
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR, MCI_UC_SAR)
|
|
|
),
|
|
|
|
|
|
/* known AO MCACODs: */
|
|
|
MCESEV(
|
|
|
AO, "Action optional: memory scrubbing error",
|
|
|
- SER, MASK(MCI_UC_SAR|MCI_STATUS_OVER|0xfff0, MCI_UC_S|0xc0)
|
|
|
+ SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|0xfff0, MCI_UC_S|0x00c0)
|
|
|
),
|
|
|
MCESEV(
|
|
|
AO, "Action optional: last level cache writeback error",
|
|
|
- SER, MASK(MCI_UC_SAR|MCI_STATUS_OVER|MCACOD, MCI_UC_S|0x17a)
|
|
|
+ SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR|MCACOD, MCI_UC_S|0x017a)
|
|
|
),
|
|
|
MCESEV(
|
|
|
- SOME, "Action optional unknown MCACOD",
|
|
|
+ SOME, "Action optional: unknown MCACOD",
|
|
|
SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR, MCI_UC_S)
|
|
|
),
|
|
|
MCESEV(
|
|
|
SOME, "Action optional with lost events",
|
|
|
- SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR, MCI_UC_S|MCI_STATUS_OVER)
|
|
|
+ SER, MASK(MCI_STATUS_OVER|MCI_UC_SAR, MCI_STATUS_OVER|MCI_UC_S)
|
|
|
),
|
|
|
|
|
|
MCESEV(
|
|
|
PANIC, "Overflowed uncorrected",
|
|
|
- BITSET(MCI_STATUS_UC|MCI_STATUS_OVER)
|
|
|
+ BITSET(MCI_STATUS_OVER|MCI_STATUS_UC)
|
|
|
),
|
|
|
MCESEV(
|
|
|
UC, "Uncorrected",
|
|
@@ -157,15 +156,15 @@ static int error_context(struct mce *m)
|
|
|
return IN_KERNEL;
|
|
|
}
|
|
|
|
|
|
-int mce_severity(struct mce *a, int tolerant, char **msg)
|
|
|
+int mce_severity(struct mce *m, int tolerant, char **msg)
|
|
|
{
|
|
|
- enum context ctx = error_context(a);
|
|
|
+ enum context ctx = error_context(m);
|
|
|
struct severity *s;
|
|
|
|
|
|
for (s = severities;; s++) {
|
|
|
- if ((a->status & s->mask) != s->result)
|
|
|
+ if ((m->status & s->mask) != s->result)
|
|
|
continue;
|
|
|
- if ((a->mcgstatus & s->mcgmask) != s->mcgres)
|
|
|
+ if ((m->mcgstatus & s->mcgmask) != s->mcgres)
|
|
|
continue;
|
|
|
if (s->ser == SER_REQUIRED && !mce_ser)
|
|
|
continue;
|
|
@@ -242,15 +241,15 @@ static const struct file_operations severities_coverage_fops = {
|
|
|
|
|
|
static int __init severities_debugfs_init(void)
|
|
|
{
|
|
|
- struct dentry *dmce = NULL, *fseverities_coverage = NULL;
|
|
|
+ struct dentry *dmce, *fsev;
|
|
|
|
|
|
dmce = mce_get_debugfs_dir();
|
|
|
- if (dmce == NULL)
|
|
|
+ if (!dmce)
|
|
|
goto err_out;
|
|
|
- fseverities_coverage = debugfs_create_file("severities-coverage",
|
|
|
- 0444, dmce, NULL,
|
|
|
- &severities_coverage_fops);
|
|
|
- if (fseverities_coverage == NULL)
|
|
|
+
|
|
|
+ fsev = debugfs_create_file("severities-coverage", 0444, dmce, NULL,
|
|
|
+ &severities_coverage_fops);
|
|
|
+ if (!fsev)
|
|
|
goto err_out;
|
|
|
|
|
|
return 0;
|
|
@@ -259,4 +258,4 @@ err_out:
|
|
|
return -ENOMEM;
|
|
|
}
|
|
|
late_initcall(severities_debugfs_init);
|
|
|
-#endif
|
|
|
+#endif /* CONFIG_DEBUG_FS */
|