Re: [PATCH v20 3/9] cxl/ras: Handle RCH correctable and uncorrectable errors in one pass
From: Cheatham, Benjamin
Date: Wed Sep 02 2026 - 17:11:59 EST
On 9/2/2026 8:39 AM, Terry Bowman wrote:
> cxl_rch_get_aer_info() reads and clears both the correctable and
> uncorrectable AER status registers in a single pass. The previous
> severity decode returned after the first matching class, so when a
> correctable and an uncorrectable error were logged simultaneously the
> correctable event was cleared in hardware but never traced or handled.
>
> Handle both classes independently: dispatch cxl_handle_cor_ras() when
> correctable status is set and cxl_do_recovery() when uncorrectable
> status is set. Remove the now-unused cxl_rch_get_aer_severity() helper
> and decode the uncorrectable severity inline.
>
> Log the uncorrectable status unconditionally. __pci_print_aer() only
> logs it via ANFE recursion when aer_compute_anfe_status() is non-zero.
> A conditional skip could drop a fatal or non-ANFE record once the
> hardware status is cleared.
>
> Reported-by: Sashiko <sashiko-bot@xxxxxxxxxx>
> Link: https://lore.kernel.org/linux-cxl/20260803222923.517B11F00A3A@xxxxxxxxxxxxxxx/
> Signed-off-by: Terry Bowman <terry.bowman@xxxxxxx>
>
> ---
LGTM:
Reviewed-by: Ben Cheatham <benjamin.cheatham@xxxxxxx>