Re: [PATCH v4] vmcoreinfo: Track and log recoverable hardware errors

Dave Hansen
2025-08-01T17:06:53Z

On 8/1/25 10:00, Breno Leitao wrote:
> Would a solution like this look better?
>
> enum hwerr_error_type {
> HWERR_RECOV_CPU,
> HWERR_RECOV_MEMORY,
> HWERR_RECOV_PCI,
> HWERR_RECOV_CXL,
> HWERR_RECOV_OTHERS,
> #ifdef CONFIG_X86_MCE
> HWERR_RECOV_MCE,
> #endif
> HWERR_RECOV_MAX,
> };
>
> Or, would you prefer to have HWERR_RECOV_ARCH and keep it always there?

That would only work for HWERR_RECOV_MCE, though. If you added another:

#ifdef CONFIG_FOO
HWERR_RECOV_FOO
#endif

then your example of:

>>> prog['hwerror_data']
(struct hwerror_info[6]){
{
.count = (int)844,
.timestamp = (time64_t)1752852018,
},
...

doesn't work any more. You wouldn't be able to tell HWERR_RECOV_MCE from
HWERR_RECOV_FOO because they'd alias to the same constant.

This whole thing is an ABI. Right?