Re: [PATCHSET] block: remove ioc_*_changed()

From: Jens Axboe
Date: Tue Mar 20 2012 - 07:49:47 EST


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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/