[PATCH 1/4] scsi: explicitly release bidi buffers

2014-03-27 Thread Christoph Hellwig
Instead of trying to guess when we have a BIDI buffer in scsi_release_buffers add a function to explicitly free the BIDI ressoures in the one place that handles them. This avoids needing a special __scsi_release_buffers for the case where we already have freed the request as well. Signed-off-by:

[PATCH 1/4] scsi: explicitly release bidi buffers

2014-05-01 Thread Christoph Hellwig
Instead of trying to guess when we have a BIDI buffer in scsi_release_buffers add a function to explicitly free the BIDI ressoures in the one place that handles them. This avoids needing a special __scsi_release_buffers for the case where we already have freed the request as well. Signed-off-by:

Re: [PATCH 1/4] scsi: explicitly release bidi buffers

2014-03-30 Thread Mike Christie
On 03/27/2014 11:14 AM, Christoph Hellwig wrote: > +static void scsi_release_bidi_buffers(struct scsi_cmnd *cmd) > +{ > + struct scsi_data_buffer *bidi_sdb = cmd->request->next_rq->special; > + > + scsi_free_sgtable(bidi_sdb); > + kmem_cache_free(scsi_sdb_cache, bidi_sdb); > + cmd->

Re: [PATCH 1/4] scsi: explicitly release bidi buffers

2014-03-30 Thread Christoph Hellwig
On Mon, Mar 31, 2014 at 12:58:01AM -0500, Mike Christie wrote: > > Hey, > > I just wanted to double check that the only time we do bidi requests is > when they come through as REQ_TYPE_BLOCK_PC requests. I saw some of the > code comments on the init side that indicated that, but there was that >