Re: [PATCH v2 1/3] x86/mce/inject: Remove call to mce_notify_irq()

From: Borislav Petkov
Date: Mon Feb 17 2025 - 06:48:01 EST


On Mon, Feb 17, 2025 at 01:20:55PM +0200, Nikolay Borisov wrote:
> Actually there is no loss of functionality since after an MCE is injected
> the early notifier will correctly call the usermode helper. So I
> think the following change log better reflects the situation:
>
>
> x86/mce/inject: Remove call to mce_notify_irq()
> The call to mce_notify_irq() has been there since the initial version of
> the soft inject mce machinery, introduced in ea149b36c7f5 ("x86,
> mce: add basic error injection infrastructure"). At that time it was
> functional since injecting an MCE resulted in the following call chain:
> raise_mce()
> ->machine_check_poll()
> ->mce_log() - sets notfiy_user_bit
> ->mce_notify_user() (current mce_notify_irq) consumed the bit and called the
> usermode helper.
> However, with the introduction of 011d82611172 ("RAS: Add a Corrected Errors Collector")
> the code got moved around and the user mode helper began to be called
> via the early notifier (mce_first_notifier()) rendering the remaining call
> in raise_local() defunct as the mce_need_notify bit (ex notify_user) is
> only being set from the early notifier.
> Remove the noop call and make mce_notify_irq static. No functional
> changes.

Ah, there was that. We're doing a serious dance just to log an error, that's
for sure.

Yeah, that makes sense.

Thx.

--
Regards/Gruss,
Boris.

https://people.kernel.org/tglx/notes-about-netiquette