[SCSI] libfc: fix memory leakage in local port
authorHillf Danton <dhillf@gmail.com>
Wed, 1 Dec 2010 00:18:59 +0000 (16:18 -0800)
committerJames Bottomley <James.Bottomley@suse.de>
Tue, 21 Dec 2010 18:24:23 +0000 (12:24 -0600)
There seems info should get freed when error encountered.

Signed-off-by: Hillf Danton <dhillf@gmail.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/libfc/fc_lport.c

index 9c1d6b8b24a3503e7042d89c8e80c3b9f4272e58..b91a11e4fa06c210b4461279371ae5618c946bf1 100644 (file)
@@ -1703,8 +1703,10 @@ static int fc_lport_els_request(struct fc_bsg_job *job,
        info->sg = job->reply_payload.sg_list;
 
        if (!lport->tt.exch_seq_send(lport, fp, fc_lport_bsg_resp,
-                                    NULL, info, tov))
+                                    NULL, info, tov)) {
+               kfree(info);
                return -ECOMM;
+       }
        return 0;
 }