On Thu, Oct 08, 2026 at 11:19:22AM -0400, Alex Deucher wrote:
> On Thu, Oct 8, 2026 at 8:26???AM Lukas Wunner <[email protected]> wrote:
> > Alex is seeing a probe failure of the amdgpu driver after the Root Port
> > above an AMD Navi10 GPU has been reset.  The reset was performed to
> > recover from a Firmware First reported Fatal Error.
> >
> > However all status registers in the Root Port's AER Extended Capability
> > are blank, so apparently the platform firmware raised a false alarm.
[...]
> > Skip error recovery on false alarms, i.e. if no unmasked errors were
> > actually signaled.
[...]
> > Fixes: eddba19b8b5f ("PCI/AER: Support Advisory Non-Fatal Errors")
> > Reported-by: Alex Deucher <[email protected]>
> > Tested-by: Alex Deucher <[email protected]>
> 
> FWIW, I only tested this patch in conjunction with the other two
> patches you had posted on the ticket.  I haven't tried just this patch
> alone.

This patch alone should avoid the issues you're seeing both
on the Vega20 system (the first one you reported in the bugzilla) and
on the Navi10 system (the second one).

On both systems, the BIOS is signaling a Fatal Error via Firmware First
error handling even though the error status registers are blank.

The Vega20 log says that error recovery failed because no driver was
bound to the GPU.  The two additional patches you tested with avoid this
error message because they change error recovery to tolerate unbound
devices.  But by not attempting recovery on false alarms in the first
place, it becomes irrelevant whether the device is bound.

I had skimmed the log after your initial report, saw the message about
recovery failing for unbound devices and hence pointed you to the
patches which tolerate unbound devices on error recovery.

Then on closer inspection of the logs I realized that the error status
registers are completely blank, so the error reported by firmware is
bogus and attempting recovery is pointless.

For native error handling (i.e. not Firmware First), we already check
whether "status & ~mask" is zero in aer_get_device_error_info() and
skip recovery if so.  This patch aligns Firmware First error handling
with native error handling in that regard.

Thanks,

Lukas

Reply via email to