HomeFreeBSD

Fix mpr(4) panic during a firmware update.

Description

Fix mpr(4) panic during a firmware update.

Issue Description:
The RequestCredits field of IOCFacts got changed between the Phase23
firmware to Phase24 firmware. So as part of firmware update operation,
driver has to free the resources & pools which are created with the Phase23
Firmware's IOCFacts data (i.e. during driver load time) and has to
reallocate the resources and pools using Phase24's IOCFacts data. Here
driver has freed the interrupts but missed to reallocate the interrupts and
hence config page read operation is getting timed out and controller is
going for recursive reinit (controller reset) operations and leading to
kernel panic.

Fix:
Reallocate the interrupts if the interrupts are disabled as part of
firmware update/downgrade operation.

Submitted by: Sreekanth Ready <sreekanth.reddy@broadcom.com>
Tested by: ken
MFC after: 3 days

(cherry picked from commit 11778fca4a83f5e3b597c75785aa5c0ee0dc518e)

Details

Provenance
kenAuthored on Oct 17 2022, 4:48 PM
Parents
rGefccf8d5fe3b: ioat: Add Ice Lake ID.
Branches
Unknown
Tags
Unknown