[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070424170227.GB27887@kernel.dk>
Date: Tue, 24 Apr 2007 19:02:28 +0200
From: Jens Axboe <jens.axboe@...cle.com>
To: Vasily Tarasov <vtaras@...nvz.org>
Cc: LKML <linux-kernel@...r.kernel.org>, OVZDL <devel@...nvz.org>
Subject: Re: [PATCH] cfq: get rid of cfqq hash
On Tue, Apr 24 2007, Vasily Tarasov wrote:
> From: Vasily Tarasov <vtaras@...nvz.org>
>
> cfq hash is no more necessary. We always can get cfqq from io context.
> cfq_get_io_context_noalloc() function is introduced, because we don't want to
> allocate cic on merging and checking may_queue.
> In order to identify sync queue we've used hash key = CFQ_KEY_ASYNC. Since hash
> is eliminated we need to use other criterion: sync flag for queue is added.
> In all places where we dig in rb_tree we're in current context, so no
> additional locking is required.
>
> Advantages of this patch: no additional memory for hash, no seeking in hash,
> code is cleaner. But it is necessary now to seek cic in per-ioc rbtree, but
> it is faster:
> - most processes work only with few devices
> - most systems have only few block devices
> - it is a rb-tree
Vasily, this is still not against the CFQ branch, I get tons of rejects:
axboe@...son:/src/linux-2.6-block $ patch -p1 --dry-run < ~/foo
[...]
10 out of 27 hunks FAILED -- saving rejects to file
block/cfq-iosched.c.rej
If you don't want to use the git tree, then just grab
http://brick.kernel.dk/snaps/cfq-update-20070424
and apply it to 2.6.21-rc7-gitX (latest) and provide a diff against
that. Thanks!
--
Jens Axboe
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists