[dm-devel] Re: [PATCH 6/7] blk_end_request: remove/unexport end_that_request_*

Boaz Harrosh bharrosh at panasas.com
Wed Sep 5 07:38:53 UTC 2007


On Wed, Sep 05 2007 at 2:13 +0300, Kiyoshi Ueda <k-ueda at ct.jp.nec.com> wrote:
> Hi,
> 
> On Tue, 4 Sep 2007 17:25:14 -0400, "Halevy, Benny" <bhalevy at panasas.com> wrote:
>> We suspect we'll still need the extern entry points for handling the bidi 
>> request in the scsi_io_completion() path as we only want to call
>> end_that_request_chunk on req->next_rq and never
>> end_that_request_last.
>>  
>> (see 
>> http://www.bhalevy.com/open-osd/download/linux-2.6.23-rc2_and_iscsi-iscsi-2007_08_09/0005-SCSI-bidi-support.patch)
> 
> If this patch-set is merged, there may be other way to do that.
> 
> For tricky drivers, special interface, blk_end_request_callback(),
> is added in the patch 5/7.
> (http://marc.info/?l=linux-kernel&m=118860027714753&w=2)
> Currently, only user of the interface is ide-cd (cdrom_newpc_intr()).
> It needs to call only end_that_request_first() too.
> 
> With the patch 7/7, you can set your own handler in rq->end_io()
> to complete the request by your own way.
> 
> Thanks,
> Kiyoshi Ueda

That will not work, as I will have no means of releasing the BIOs of
the bidi request, which can not use end_request().

I guess as Jens said it's OK to remove them now, and later we can
just add end_that_request_first(), will be enough.
Or we can patch end_request() to also call 
__end_that_request_first(req->next_rq) if not NULL.

Jens which method do you prefer? I will adjust my patches accordingly.

Thanks
Boaz Harrosh




More information about the dm-devel mailing list