x86/mce: Correct the detection of invalid notifier priorities
authorZhen Lei <thunder.leizhen@huawei.com>
Fri, 6 Nov 2020 14:12:16 +0000 (22:12 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 30 Dec 2020 10:53:03 +0000 (11:53 +0100)
[ Upstream commit 15af36596ae305aefc8c502c2d3e8c58221709eb ]

Commit

  c9c6d216ed28 ("x86/mce: Rename "first" function as "early"")

changed the enumeration of MCE notifier priorities. Correct the check
for notifier priorities to cover the new range.

 [ bp: Rewrite commit message, remove superfluous brackets in
   conditional. ]

Fixes: c9c6d216ed28 ("x86/mce: Rename "first" function as "early"")
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20201106141216.2062-2-thunder.leizhen@huawei.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/x86/include/asm/mce.h
arch/x86/kernel/cpu/mce/core.c

index a0f147893a041491c305001762525873a3c4fcc0..fc25c88c7ff29c60c21424b06b2435c2fe46cb12 100644 (file)
@@ -177,7 +177,8 @@ enum mce_notifier_prios {
        MCE_PRIO_EXTLOG,
        MCE_PRIO_UC,
        MCE_PRIO_EARLY,
-       MCE_PRIO_CEC
+       MCE_PRIO_CEC,
+       MCE_PRIO_HIGHEST = MCE_PRIO_CEC
 };
 
 struct notifier_block;
index 32b7099e35111910b09a237e3da0ac273801dbf3..311688202ea51b5104a8c9391503c6db2f9a5a9a 100644 (file)
@@ -162,7 +162,8 @@ EXPORT_SYMBOL_GPL(mce_log);
 
 void mce_register_decode_chain(struct notifier_block *nb)
 {
-       if (WARN_ON(nb->priority > MCE_PRIO_MCELOG && nb->priority < MCE_PRIO_EDAC))
+       if (WARN_ON(nb->priority < MCE_PRIO_LOWEST ||
+                   nb->priority > MCE_PRIO_HIGHEST))
                return;
 
        blocking_notifier_chain_register(&x86_mce_decoder_chain, nb);