diff options
Diffstat (limited to 'drivers/scsi/libfc/fc_rport.c')
-rw-r--r-- | drivers/scsi/libfc/fc_rport.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/libfc/fc_rport.c b/drivers/scsi/libfc/fc_rport.c index a84ef13ed74a..a7175adab32d 100644 --- a/drivers/scsi/libfc/fc_rport.c +++ b/drivers/scsi/libfc/fc_rport.c | |||
@@ -652,7 +652,7 @@ void fc_rport_flogi_resp(struct fc_seq *sp, struct fc_frame *fp, | |||
652 | FC_RPORT_DBG(rdata, "Received a FLOGI %s\n", fc_els_resp_type(fp)); | 652 | FC_RPORT_DBG(rdata, "Received a FLOGI %s\n", fc_els_resp_type(fp)); |
653 | 653 | ||
654 | if (fp == ERR_PTR(-FC_EX_CLOSED)) | 654 | if (fp == ERR_PTR(-FC_EX_CLOSED)) |
655 | return; | 655 | goto put; |
656 | 656 | ||
657 | mutex_lock(&rdata->rp_mutex); | 657 | mutex_lock(&rdata->rp_mutex); |
658 | 658 | ||
@@ -689,6 +689,7 @@ out: | |||
689 | fc_frame_free(fp); | 689 | fc_frame_free(fp); |
690 | err: | 690 | err: |
691 | mutex_unlock(&rdata->rp_mutex); | 691 | mutex_unlock(&rdata->rp_mutex); |
692 | put: | ||
692 | kref_put(&rdata->kref, rdata->local_port->tt.rport_destroy); | 693 | kref_put(&rdata->kref, rdata->local_port->tt.rport_destroy); |
693 | return; | 694 | return; |
694 | bad: | 695 | bad: |