[SCSI] Fix leak of Scsi_Cmnds
authorAlan Stern <stern@rowland.harvard.edu>
Fri, 14 Oct 2005 15:23:27 +0000 (11:23 -0400)
committerJames Bottomley <jejb@mulgrave.(none)>
Sun, 16 Oct 2005 20:35:11 +0000 (15:35 -0500)
commit7c72ce81870ded9365f4bc5caa98ef1591dd18dd
treeff1eae57d11693f7e2d36efd3fdc26efa45e1419
parentd16794f6ac8d9b50f62e02a6e6175ae1a30d0ccd
[SCSI] Fix leak of Scsi_Cmnds

When a request is deferred in scsi_init_io because the sg table could not
be allocated, the associated scsi_cmnd is not released and the request is
not marked with REQ_DONTPREP.  When the command is retried, if
scsi_prep_fn decides to kill it then the scsi_cmnd will never be released.

This patch (as573) changes scsi_init_io so that it calls scsi_put_command
before deferring a request.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/scsi_lib.c