Re: [RESEND PATCH 2/3] x86/mce: Make mce_notify_irq() static

From: Nikolay Borisov
Date: Wed Jan 15 2025 - 08:43:05 EST




On 15.01.25 г. 15:37 ч., Zhuo, Qiuxu wrote:
From: Nikolay Borisov <nik.borisov@xxxxxxxx>
[...]
Subject: [RESEND PATCH 2/3] x86/mce: Make mce_notify_irq() static

It's no longer used outside of core.c so let's make it static. No functional
changes.

Signed-off-by: Nikolay Borisov <nik.borisov@xxxxxxxx>
---
arch/x86/include/asm/mce.h | 2 --
arch/x86/kernel/cpu/mce/core.c | 43 +++++++++++++++++-----------------
2 files changed, 22 insertions(+), 23 deletions(-)

diff --git a/arch/x86/include/asm/mce.h b/arch/x86/include/asm/mce.h index
eb2db07ef39c..6c77c03139f7 100644
--- a/arch/x86/include/asm/mce.h
+++ b/arch/x86/include/asm/mce.h
@@ -296,8 +296,6 @@ enum mcp_flags {

void machine_check_poll(enum mcp_flags flags, mce_banks_t *b);

-bool mce_notify_irq(void);
-
DECLARE_PER_CPU(struct mce, injectm);

/* Disable CMCI/polling for MCA bank claimed by firmware */ diff --git
a/arch/x86/kernel/cpu/mce/core.c b/arch/x86/kernel/cpu/mce/core.c index
23e5e7f7c554..89625ff79c3b 100644
--- a/arch/x86/kernel/cpu/mce/core.c
+++ b/arch/x86/kernel/cpu/mce/core.c
@@ -584,6 +584,28 @@ bool mce_is_correctable(struct mce *m) }
EXPORT_SYMBOL_GPL(mce_is_correctable);

+/*
+ * Notify the user(s) about new machine check events.
+ * Can be called from interrupt context, but not from machine check/NMI
+ * context.
+ */
+static int mce_notify_irq(void)
+{
+ /* Not more than two messages every minute */
+ static DEFINE_RATELIMIT_STATE(ratelimit, 60*HZ, 2);
+
+ if (test_and_clear_bit(0, &mce_need_notify)) {
+ mce_work_trigger();
+
+ if (__ratelimit(&ratelimit))
+ pr_info(HW_ERR "Machine check events logged\n");
+
+ return 1;
+ }
+
+ return 0;
+}
+

Did you mistakenly change the return value type to int?

It was int on master, where this patch originated from. Whereas on core/ras there's c845cb8dbd2e1a804babfd13648026c3a7cfbc0b which changes the function to bool. So I guess it's a rebase artifact, will fix it on next submission, but I will wait for more feedback.