diff options
author | Dave Jones <davej@redhat.com> | 2006-03-09 10:21:27 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-03-12 10:25:40 -0500 |
commit | 93f56089898a1b27fc0c89b5c1c748291353f679 (patch) | |
tree | 4c1280939653d737d3e79d65fd58c3301ec6d8bf /drivers/scsi/scsi_scan.c | |
parent | a0b6b6e5308d6ef70febfc3cfd5488717809b3e4 (diff) |
[SCSI] fix two leaks in scsi_alloc_sdev failure paths
If the scsi_alloc_queue or the slave_alloc calls in scsi_alloc_device fail,
we forget to release the locally allocated sdev on the failure path.
Coverity #609
Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/scsi_scan.c')
-rw-r--r-- | drivers/scsi/scsi_scan.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c index be14f9d82fde..5d4ca87af3df 100644 --- a/drivers/scsi/scsi_scan.c +++ b/drivers/scsi/scsi_scan.c | |||
@@ -251,6 +251,7 @@ static struct scsi_device *scsi_alloc_sdev(struct scsi_target *starget, | |||
251 | /* release fn is set up in scsi_sysfs_device_initialise, so | 251 | /* release fn is set up in scsi_sysfs_device_initialise, so |
252 | * have to free and put manually here */ | 252 | * have to free and put manually here */ |
253 | put_device(&starget->dev); | 253 | put_device(&starget->dev); |
254 | kfree(sdev); | ||
254 | goto out; | 255 | goto out; |
255 | } | 256 | } |
256 | 257 | ||