From: James Smart <james.sm...@emulex.com> 3.12-stable review patch. If anyone has any objections, please let me know.
=============== commit 63e480fd2f598e9ad37f89e79c36834e7dd60ba0 upstream. Signed-off-by: Dick Kennedy <dick.kenn...@emulex.com> Signed-off-by: James Smart <james.sm...@emulex.com> Reviewed-by: Hannes Reinecke <h...@suse.de> Signed-off-by: James Bottomley <jbottom...@odin.com> Acked-by: Johannes Thumshirn <jthumsh...@suse.com> Signed-off-by: Jiri Slaby <jsl...@suse.cz> --- drivers/scsi/lpfc/lpfc_scsi.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/lpfc/lpfc_scsi.c b/drivers/scsi/lpfc/lpfc_scsi.c index ed7759980c47..1d01ed6f8dd2 100644 --- a/drivers/scsi/lpfc/lpfc_scsi.c +++ b/drivers/scsi/lpfc/lpfc_scsi.c @@ -5264,7 +5264,15 @@ lpfc_target_reset_handler(struct scsi_cmnd *cmnd) if (status == FAILED) { lpfc_printf_vlog(vport, KERN_ERR, LOG_FCP, "0722 Target Reset rport failure: rdata x%p\n", rdata); - return FAILED; + if (pnode) { + spin_lock_irq(shost->host_lock); + pnode->nlp_flag &= ~NLP_NPR_ADISC; + pnode->nlp_fcp_info &= ~NLP_FCP_2_DEVICE; + spin_unlock_irq(shost->host_lock); + } + lpfc_reset_flush_io_context(vport, tgt_id, lun_id, + LPFC_CTX_TGT); + return FAST_IO_FAIL; } scsi_event.event_type = FC_REG_SCSI_EVENT; -- 2.7.0