| From c170e5a8d222537e98aa8d4fddb667ff7a2ee114 Mon Sep 17 00:00:00 2001 |
| From: Tony Battersby <tonyb@cybernetics.com> |
| Date: Thu, 12 Jul 2018 16:30:45 -0400 |
| Subject: scsi: sg: fix minor memory leak in error path |
| |
| From: Tony Battersby <tonyb@cybernetics.com> |
| |
| 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> |
| |
| --- |
| drivers/scsi/sg.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/scsi/sg.c |
| +++ b/drivers/scsi/sg.c |
| @@ -2186,6 +2186,7 @@ sg_add_sfp(Sg_device * sdp) |
| 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); |