From: Alan Stern Date: Fri, 12 Feb 2010 17:13:31 +0000 (-0500) Subject: fix memory leak in scsi_report_lun_scan X-Git-Tag: firefly_0821_release~10164^2~6^2~42 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=3c08ee489ddebd3cd0655940a57e1b71f524ef4a;p=firefly-linux-kernel-4.4.55.git fix memory leak in scsi_report_lun_scan commit 75f8ee8e01a6c96652f27da40d4bdac9e2e485f0 upstream. This patch (as1333) fixes a bug in scsi_report_lun_scan(). If a newly-allocated device can't be used, it should be deleted. Signed-off-by: Alan Stern Signed-off-by: James Bottomley Cc: Hannes Reinecke Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c index 47291bcff0d5..14d270381590 100644 --- a/drivers/scsi/scsi_scan.c +++ b/drivers/scsi/scsi_scan.c @@ -1336,8 +1336,10 @@ static int scsi_report_lun_scan(struct scsi_target *starget, int bflags, sdev = scsi_alloc_sdev(starget, 0, NULL); if (!sdev) return 0; - if (scsi_device_get(sdev)) + if (scsi_device_get(sdev)) { + __scsi_remove_device(sdev); return 0; + } } sprintf(devname, "host %d channel %d id %d",