From e2e8afb12c8dd1426e5d1b72116ed0ea0b58088a Mon Sep 17 00:00:00 2001 From: Kashyap D Desai Date: Tue, 29 Nov 2016 12:59:38 +0000 Subject: [PATCH] Process outstanding reply descriptors from all the reply descriptor post queues before initiating OCR. Submitted by: Sumit Saxena Reviewed by: Kashyap Desai MFC after: 3 days Sponsored by: Broadcom Limited/AVAGO Technologies --- sys/dev/mrsas/mrsas.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/dev/mrsas/mrsas.c b/sys/dev/mrsas/mrsas.c index f76aa48b15e1..6f5a129c6e47 100644 --- a/sys/dev/mrsas/mrsas.c +++ b/sys/dev/mrsas/mrsas.c @@ -3139,6 +3139,11 @@ mrsas_wait_for_outstanding(struct mrsas_softc *sc, u_int8_t check_reason) if (fw_state == MFI_STATE_FAULT) { mrsas_dprint(sc, MRSAS_OCR, "Found FW in FAULT state, will reset adapter.\n"); + count = sc->msix_vectors > 0 ? sc->msix_vectors : 1; + mtx_unlock(&sc->sim_lock); + for (MSIxIndex = 0; MSIxIndex < count; MSIxIndex++) + mrsas_complete_cmd(sc, MSIxIndex); + mtx_lock(&sc->sim_lock); retval = 1; goto out; }