Re: [PATCH] sg: fix leak when dio setup fails

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tuesday 28 March 2006 13:48, Douglas Gilbert wrote:
> Further to this thread started by Bryan Holty:
> http://marc.theaimsgroup.com/?l=linux-scsi&m=114306885116728&w=2
>
> Here is the reworked patch again. This time it has been
> tested with a program provided by Bryan. The patch is
> against lk 2.6.16 .
>
> Changelog:
>   - when the sg driver is unable to setup direct IO,
>     free that scatter gather list prior to falling
>     back to indirect IO
>
> Signed-off-by: Douglas Gilbert <dougg@xxxxxxxxxx>
>
> Doug Gilbert

Thanks Doug, this fixes the fixes the sg memory leak and the eventual kernel 
out of memory killer.

Signed-off-by: Douglas Gilbert <dougg@xxxxxxxxxx>
Signed-off-by: Bryan Holty <lgeek@xxxxxxxxxxxxxxx>

--- linux/drivers/scsi/sg.c	2006-03-20 10:08:49.000000000 -0500
+++ linux/drivers/scsi/sg.c2616dio_lk	2006-03-22 18:26:23.000000000 -0500
@@ -1834,8 +1834,10 @@
 	res = st_map_user_pages(schp->buffer, mx_sc_elems,
 				(unsigned long)hp->dxferp, dxfer_len, 
 				(SG_DXFER_TO_DEV == hp->dxfer_direction) ? 1 : 0);
-	if (res <= 0)
+	if (res <= 0) {
+		sg_remove_scat(schp);
 		return 1;
+	}
 	schp->k_use_sg = res;
 	schp->dio_in_use = 1;
 	hp->info |= SG_INFO_DIRECT_IO;
--
 Bryan Holty
-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux