Re: ll_rw_blk.c fails to merge requests. Help!

From: Jens Axboe (axboe@suse.de)
Date: Thu Aug 24 2000 - 14:17:11 EST


On Thu, Aug 24 2000, Linus Torvalds wrote:
> > I did a quick patch doing just this -- and a just as quick dbench showed
> > some improvement when batching freeing of requests of 64 at the time:
>
> Looks fine.
>
> However, I'd really like to introduce you to the "list_splice()" function.
> Get rid of the loop to add the free'd requests back - just splice them
> directly into the free request list. O(n) -> O(1), and much simpler too ;)

Heh, but it's not that simple. The requests that are currently on
the pending list, are not necessarily added to the same freelist. So
we have to scan the pending list, and look at each request individually.

-- 
* Jens Axboe <axboe@suse.de>
* SuSE Labs
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 31 2000 - 21:00:14 EST