projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
72e0daa
)
[SCSI] libfc: fix memory leakage in remote port
author
Hillf Danton
<
[email protected]
>
Wed, 1 Dec 2010 00:19:04 +0000
(16:19 -0800)
committer
James Bottomley
<
[email protected]
>
Tue, 21 Dec 2010 18:24:24 +0000
(12:24 -0600)
There seems rdata should get put before return.
Signed-off-by: Hillf Danton <
[email protected]
>
Signed-off-by: Robert Love <
[email protected]
>
Signed-off-by: James Bottomley <
[email protected]
>
drivers/scsi/libfc/fc_rport.c
patch
|
blob
|
history
diff --git
a/drivers/scsi/libfc/fc_rport.c
b/drivers/scsi/libfc/fc_rport.c
index a84ef13ed74adf2a0e0d1dd81c644b2f3c9514a7..a7175adab32dd4278967a0a49e276ed09f8d6a1b 100644
(file)
--- 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,
FC_RPORT_DBG(rdata, "Received a FLOGI %s\n", fc_els_resp_type(fp));
if (fp == ERR_PTR(-FC_EX_CLOSED))
-
return
;
+
goto put
;
mutex_lock(&rdata->rp_mutex);
@@
-689,6
+689,7
@@
out:
fc_frame_free(fp);
err:
mutex_unlock(&rdata->rp_mutex);
+put:
kref_put(&rdata->kref, rdata->local_port->tt.rport_destroy);
return;
bad: