struct mce entry[];
 };
 
+/* Highest last */
 enum mce_notifier_prios {
-       MCE_PRIO_FIRST          = INT_MAX,
-       MCE_PRIO_UC             = INT_MAX - 1,
-       MCE_PRIO_EXTLOG         = INT_MAX - 2,
-       MCE_PRIO_NFIT           = INT_MAX - 3,
-       MCE_PRIO_EDAC           = INT_MAX - 4,
-       MCE_PRIO_MCELOG         = 1,
-       MCE_PRIO_LOWEST         = 0,
+       MCE_PRIO_LOWEST,
+       MCE_PRIO_MCELOG,
+       MCE_PRIO_EDAC,
+       MCE_PRIO_NFIT,
+       MCE_PRIO_EXTLOG,
+       MCE_PRIO_UC,
+       MCE_PRIO_EARLY,
+       MCE_PRIO_CEC
 };
 
 struct notifier_block;
 
        return false;
 }
 
-static int mce_first_notifier(struct notifier_block *nb, unsigned long val,
+static int mce_early_notifier(struct notifier_block *nb, unsigned long val,
                              void *data)
 {
        struct mce *m = (struct mce *)data;
        return NOTIFY_DONE;
 }
 
-static struct notifier_block first_nb = {
-       .notifier_call  = mce_first_notifier,
-       .priority       = MCE_PRIO_FIRST,
+static struct notifier_block early_nb = {
+       .notifier_call  = mce_early_notifier,
+       .priority       = MCE_PRIO_EARLY,
 };
 
 static int uc_decode_notifier(struct notifier_block *nb, unsigned long val,
 int __init mcheck_init(void)
 {
        mcheck_intel_therm_init();
-       mce_register_decode_chain(&first_nb);
+       mce_register_decode_chain(&early_nb);
        mce_register_decode_chain(&mce_uc_nb);
        mce_register_decode_chain(&mce_default_nb);
        mcheck_vendor_init_severity();