Re: [PATCH] x86/mce: Restore MCA polling interval halving

Borislav Petkov
2026-04-14T21:18:35Z

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?

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
- but the first one - the work triggering - that's mcelog. It is using that
usermode helper gunk, dunno if you guys still need it.

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?