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

From: Vivek Goyal
Date: Tue Mar 20 2012 - 11:51:21 EST


On Mon, Mar 19, 2012 at 03:10:55PM -0700, 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.

Hi Tejun,

So this patch still breaks cic->cfqq association in asynchronous
manner, when new request comes in. So it will still not solve the
problem I reported where after doing IO a task changes cgroup and
tries to delete the old cgroup and hangs forever as cic->cfqq is still
holding a reference to cgroup?

Thanks
Vivek
--
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/