diff options
author | Joe Eykholt <jeykholt@cisco.com> | 2009-08-25 14:03:42 -0700 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-09-10 12:08:01 -0500 |
commit | 68a1750b46ad5177f7703081b5fe85624f1aa62b (patch) | |
tree | e7e357ecc2cd3a6d50d890fd4750c0746443eb7d /drivers/scsi/libfc | |
parent | feab4ae73031699fcf92a88f4b1e4ec1b14157a5 (diff) |
[SCSI] libfc: LOGO response code had extraeous enter_rtv
fc_rport_logo_resp() had a call to fc_rport_enter_rtv() if the
LOGO was accepted. This must've been a copy/paste mistake, but
it didn't matter since we don't stay in the LOGO state long enough
to hit this code.
Change fc_rport_logo_resp() to just enter the delete state
no matter what.
Signed-off-by: Joe Eykholt <jeykholt@cisco.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/libfc')
-rw-r--r-- | drivers/scsi/libfc/fc_rport.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/scsi/libfc/fc_rport.c b/drivers/scsi/libfc/fc_rport.c index dc97c603744..b5bc8724e1a 100644 --- a/drivers/scsi/libfc/fc_rport.c +++ b/drivers/scsi/libfc/fc_rport.c @@ -725,12 +725,10 @@ static void fc_rport_logo_resp(struct fc_seq *sp, struct fc_frame *fp, } op = fc_frame_payload_op(fp); - if (op == ELS_LS_ACC) { - fc_rport_enter_rtv(rdata); - } else { - FC_RPORT_DBG(rdata, "Bad ELS response for LOGO command\n"); - fc_rport_enter_delete(rdata, RPORT_EV_LOGO); - } + if (op != ELS_LS_ACC) + FC_RPORT_DBG(rdata, "Bad ELS response op %x for LOGO command\n", + op); + fc_rport_enter_delete(rdata, RPORT_EV_LOGO); out: fc_frame_free(fp); |