lkml.org 
[lkml]   [2012]   [Mar]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCHSET] block: remove ioc_*_changed()
On Mon, Mar 19 2012, Tejun Heo wrote:
> Hello, guys.
>
> The changed notification used by cfq is rather odd. cfq caches the
> associated cfqqs per cic and uses the changed notification to expire
> those lookup caches.
>
> The explicit notification mechanism might make sense if determining
> whether the current cache is up-to-date is difficult or expensive;
> however, that isn't the case here. Determining whether ioprio or
> cgroup has changed is straight-forward and inexpensive.
>
> This patchset updates cfq to so that it remembers the current ioprio
> and blkcg in the cic and determines whether cfqq's need to be reset
> without using the changed notification and drops the changed
> notification code.
>
> 0001-blkcg-add-blkcg-id.patch
> 0002-cfq-pass-around-cfq_io_cq-instead-of-io_context.patch
> 0003-cfq-don-t-use-icq_get_changed.patch
> 0004-block-remove-ioc_-_changed.patch
>
> 0001 adds unique u64 id to each blkcg so that policies can tell
> whether the associated blkcg has changed.
>
> 0002 makes cfq pass around cic internally instead of ioc. This is a
> cleanup in itself and necessary for the next patch.
>
> 0003 updates cfq to not use changed notification.
>
> 0004 removes code implementing changed notification.
>
> This patchset is on top of
>
> block/for-3.4/core 671058fb2a2aac4e70f01b316b06bc59b98bd138
> + [1] blkcg: fix percpu stat allocation and remove stats_lock, take#2
>
> and available in the following git branch
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git blk-ioc-remove-changed

Thanks Tejun, applied [1] and this one to for-3.4/core.

--
Jens Axboe



\
 
 \ /
  Last update: 2012-03-20 12:53    [W:0.050 / U:10.540 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site