Messages in this thread | | | Date | Wed, 13 May 2009 00:51:22 +0900 | Subject | Re: [PATCH 0/2] swim3: use blk_end_request_all() | From | FUJITA Tomonori <> |
| |
On Wed, 13 May 2009 00:36:41 +0900 Tejun Heo <tj@kernel.org> wrote:
> FUJITA Tomonori wrote: > > On Wed, 13 May 2009 00:25:51 +0900 > > Tejun Heo <tj@kernel.org> wrote: > > > >> Hello, > >> > >> FUJITA Tomonori wrote: > >>> This is against for-2.6.31 branch in the block tree. > >>> > >>> Tejun, don't we need to use blk_end_request_all() when we hit the > >>> maximum retry count in swim3_interrupt? Looks like we can't handle a > >>> request properly if we doesn't complete the request there. > >> Ummm.... why so? Can you elaborate the bug scenario a bit? I was > >> trying to keep the original behavior whereever possible. > > > > If when a request hits the maximum retry count and > > swim3_end_request_cur() doesn't complete the request there, where the > > request will be freed? > > It won't be freed. The current segment will be failed and the next > segment of the request will be tried on the next iteration, which was > the original behavior. ie. it always fails requests > segment-by-segment and hitting max retry count doesn't fail the whole > request.
Ah, I see. Thanks, then the current code is fine.
Well, it might be better to update some of the description of blk_update_request, e.g., "the special helper function is only for request stacking drivers".
| |