RE: [PATCH] x86/mce: Restore MCA polling interval halving
From: Zhuo, Qiuxu
Date: Wed Apr 15 2026 - 09:39:54 EST
Hi Boris,
> From: Borislav Petkov <bp@xxxxxxxxx>
> [...]
> Subject: Re: [PATCH] x86/mce: Restore MCA polling interval halving
>
> On Tue, Apr 07, 2026 at 03:04:04PM +0000, Zhuo, Qiuxu wrote:
> > I injected a correctable error with the CMCI interrupt enabled on an
> > Intel testing machine, and this mce_early_notifier() was invoked. But
> > the following code in mce_notify_irq() is now never executed, and I didn't
> see the error log message "Machine check events logged".
>
> You did disable the CEC, right?
Yes, I disabled the RAS_CEC.
> In any case, let's have a look:
>
> When we log an MCE, we do:
>
> mce_log # add it to the genpool and run the works
> -> mce_irq_work
> -> mce_schedule_work
> -> ..
> -> mce_gen_pool_process # this'll send it down the notifier chain
> -> x86_mce_decoder_chain
> -> mce_early_notifier # that guy sees it here and issues the trace
> record
>
> Now, mce_notify_irq() would do mce_work_trigger() and issue the printk
> - dunno, I guess we still want our printk and probably should add it back
This printk is quite useful for checking whether an MCE error event occurs.
Even though it's rate-limited, I'd appreciate keeping it.
> - but the first one - the work triggering - that's mcelog. It is using that
> usermode helper gunk, dunno if you guys still need it.
>
I'm not sure whether any distros still use this user-mode helper to start mcelog or
mcelog-like tools. @Luck, Tony, could you comment? 😊
> Because mcelog does register to the decoder chain so it'll get to see the MCE
> eventually. So that part is fine.
>
> The only question is the usermode helper gunk...
>
> Tony?