If MR_DCMD_CTRL_GET_INFO DCMD timed out, return failure rather than
doing kill adapter.

Signed-off-by: Shivasharan S <[email protected]>
---
 drivers/scsi/megaraid/megaraid_sas_base.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c 
b/drivers/scsi/megaraid/megaraid_sas_base.c
index 55c38bcf3c73..6b2b615846e7 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -4755,14 +4755,15 @@ megasas_get_ctrl_info(struct megasas_instance *instance)
                                __func__, __LINE__);
                        break;
                }
+               break;
        case DCMD_FAILED:
                megaraid_sas_kill_hba(instance);
                break;
 
        }
 
-       megasas_return_cmd(instance, cmd);
-
+       if (ret != DCMD_TIMEOUT)
+               megasas_return_cmd(instance, cmd);
 
        return ret;
 }
-- 
2.16.1

Reply via email to