summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2006-03-22 16:04:38 -0600
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2006-04-13 10:13:16 -0500
commit18c49b8cd69c360735df2cc6eeeb2593c01a81e8 (patch)
treefff4d47d08c8c0531be02f4f47d574cbbb8fdb0e
parent21b2f0c803adaf00fce1b606c50b49ae8b106773 (diff)
downloadlinux-18c49b8cd69c360735df2cc6eeeb2593c01a81e8.tar.gz
linux-18c49b8cd69c360735df2cc6eeeb2593c01a81e8.tar.bz2
linux-18c49b8cd69c360735df2cc6eeeb2593c01a81e8.zip
[SCSI] fix sg leak when scsi_execute_async fails
Doug found a bug where if scsi_execute_async fails, we are leaking sg resources. scsi_do_req never failed so we did not have to handle that case before. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-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 fcf9243dfa7d..bfa86b378fb9 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
@@ -748,6 +748,7 @@ sg_common_write(Sg_fd * sfp, Sg_request * srp,
/*
* most likely out of mem, but could also be a bad map
*/
+ sg_finish_rem_req(srp);
return -ENOMEM;
} else
return 0;