The patch titled scsi: megaraid_sas - donot process cmds if hw_crit_error is set has been added to the -mm tree. Its filename is scsi-megaraid_sas-donot-process-cmds-if-hw_crit_error-is-set.patch *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: scsi: megaraid_sas - donot process cmds if hw_crit_error is set From: Sumant Patro <sumantp@xxxxxxxx> Checks if hw_crit_error is set. If it is set, we donot process commands. Checks added in megasas_queue_command and command completion routines. Signed-off-by: Sumant Patro <sumant.patro@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- drivers/scsi/megaraid/megaraid_sas.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff -puN drivers/scsi/megaraid/megaraid_sas.c~scsi-megaraid_sas-donot-process-cmds-if-hw_crit_error-is-set drivers/scsi/megaraid/megaraid_sas.c --- a/drivers/scsi/megaraid/megaraid_sas.c~scsi-megaraid_sas-donot-process-cmds-if-hw_crit_error-is-set +++ a/drivers/scsi/megaraid/megaraid_sas.c @@ -841,6 +841,11 @@ megasas_queue_command(struct scsi_cmnd * instance = (struct megasas_instance *) scmd->device->host->hostdata; + + /* Don't process if we have already declared adapter dead */ + if (instance->hw_crit_error) + return SCSI_MLQUEUE_HOST_BUSY; + scmd->scsi_done = done; scmd->result = 0; @@ -1282,11 +1287,13 @@ megasas_deplete_reply_queue(struct megas if(instance->instancet->clear_intr(instance->reg_set)) return IRQ_NONE; + if (instance->hw_crit_error) + goto out_done; /* * Schedule the tasklet for cmd completion */ tasklet_schedule(&instance->isr_tasklet); - +out_done: return IRQ_HANDLED; } @@ -1741,6 +1748,10 @@ static void megasas_complete_cmd_dpc(uns struct megasas_cmd *cmd; struct megasas_instance *instance = (struct megasas_instance *)instance_addr; + /* If we have already declared adapter dead, donot complete cmds */ + if (instance->hw_crit_error) + return; + producer = *instance->producer; consumer = *instance->consumer; _ Patches currently in -mm which might be from sumantp@xxxxxxxx are origin.patch scsi-megaraid_sas-donot-process-cmds-if-hw_crit_error-is-set.patch scsi-megaraid_sas-added-bios_param-in-scsi_host_template.patch scsi-megaraid_sas-throttle-io-if-fw-is-busy.patch scsi-megaraid_sas-replace-pci_alloc_consitent-with-dma_alloc_coherent-in-ioctl-path.patch scsi-megaraid_sas-return-sync-cache-call-with-success.patch scsi-megaraid_sas-update-version-and-author-info.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html