HomeFreeBSD

cxgbe(4): Changes to the fatal error handler.

Description

cxgbe(4): Changes to the fatal error handler.

  • New error_flags that can be used from the error ithread and elsewhere without a synch_op.
  • Stop the adapter immediately in t4_fatal_err but defer most of the rest of the handling to a task. The task is allowed to sleep, unlike the ithread. Remove async_event_task as it is no longer needed.
  • Dump the devlog, CIMLA, and PCIE_FW exactly once on any fatal error involving the firmware or the CIM block. While here, dump some additional info (see dump_cim_regs) for these errors.
  • If both reset_on_fatal_err and panic_on_fatal_err are set then attempt a reset first and do not panic the system if it is successful.

Sponsored by: Chelsio Communications

(cherry picked from commit e9e7bc8250548fc6f91e2b3b9c30a865c5edfb60)

Details

Provenance
npAuthored on Feb 4 2022, 9:16 PM
Parents
rG109eb045bdcd: Apply lld fixes for internal errors building perl on 32-bit PowerPC
Branches
Unknown
Tags
Unknown