From: Mike Christie <michaelc@xxxxxxxxxxx> This patch just has libfc scsi eh callbacks call fc_block_scsi_eh like other FC drivers Signed-off-by: Mike Christie <michaelc@xxxxxxxxxxx> --- drivers/scsi/libfc/fc_fcp.c | 25 +++++++++++++++++++------ 1 files changed, 19 insertions(+), 6 deletions(-) diff --git a/drivers/scsi/libfc/fc_fcp.c b/drivers/scsi/libfc/fc_fcp.c index c797f6b..61e7045 100644 --- a/drivers/scsi/libfc/fc_fcp.c +++ b/drivers/scsi/libfc/fc_fcp.c @@ -1997,8 +1997,13 @@ int fc_eh_abort(struct scsi_cmnd *sc_cmd) { struct fc_fcp_pkt *fsp; struct fc_lport *lport; - int rc = FAILED; unsigned long flags; + int rc; + + rc = fc_block_scsi_eh(sc_cmd); + if (rc) + return rc; + rc = FAILED; lport = shost_priv(sc_cmd->device->host); if (lport->state != LPORT_ST_READY) @@ -2044,12 +2049,15 @@ int fc_eh_device_reset(struct scsi_cmnd *sc_cmd) struct fc_lport *lport; struct fc_fcp_pkt *fsp; struct fc_rport *rport = starget_to_rport(scsi_target(sc_cmd->device)); - int rc = FAILED; - int rval; + int rc; - rval = fc_remote_port_chkready(rport); - if (rval) - goto out; + rc = fc_block_scsi_eh(sc_cmd); + if (rc) + return rc; + rc = FAILED; + + if (fc_remote_port_chkready(rport)) + return rc; lport = shost_priv(sc_cmd->device->host); @@ -2093,9 +2101,14 @@ int fc_eh_host_reset(struct scsi_cmnd *sc_cmd) struct Scsi_Host *shost = sc_cmd->device->host; struct fc_lport *lport = shost_priv(shost); unsigned long wait_tmo; + int rc; FC_SCSI_DBG(lport, "Resetting host\n"); + rc = fc_block_scsi_eh(sc_cmd); + if (rc) + return rc; + lport->tt.lport_reset(lport); wait_tmo = jiffies + FC_HOST_RESET_TIMEOUT; while (!fc_fcp_lport_queue_ready(lport) && time_before(jiffies, -- 1.7.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html