summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Battersby <tonyb@cybernetics.com>2018-07-12 16:30:45 -0400
committerBen Hutchings <ben@decadent.org.uk>2020-06-11 19:05:51 +0100
commited1c1e63c58ed1f7067f8bb5c439c958dc1c2d18 (patch)
tree475ca65aee999d0bcd4d7c6a5733d1257ab2cbff
parent8ffd761c97a83a5eb2ff500afd50a5bb9c3711ed (diff)
downloadlinux-stable-ed1c1e63c58ed1f7067f8bb5c439c958dc1c2d18.tar.gz
linux-stable-ed1c1e63c58ed1f7067f8bb5c439c958dc1c2d18.tar.bz2
linux-stable-ed1c1e63c58ed1f7067f8bb5c439c958dc1c2d18.zip
scsi: sg: fix minor memory leak in error path
commit c170e5a8d222537e98aa8d4fddb667ff7a2ee114 upstream. Fix a minor memory leak when there is an error opening a /dev/sg device. Fixes: cc833acbee9d ("sg: O_EXCL and other lock handling") Cc: <stable@vger.kernel.org> Reviewed-by: Ewan D. Milne <emilne@redhat.com> Signed-off-by: Tony Battersby <tonyb@cybernetics.com> Reviewed-by: Bart Van Assche <bart.vanassche@wdc.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r--drivers/scsi/sg.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
index 38c575bb4c20..614c529d4e51 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
@@ -2168,6 +2168,7 @@ sg_add_sfp(Sg_device * sdp, int dev)
write_lock_irqsave(&sdp->sfd_lock, iflags);
if (atomic_read(&sdp->detaching)) {
write_unlock_irqrestore(&sdp->sfd_lock, iflags);
+ kfree(sfp);
return ERR_PTR(-ENODEV);
}
list_add_tail(&sfp->sfd_siblings, &sdp->sfds);