Messages in this thread | | | Date | Fri, 13 Apr 2012 13:47:10 -0700 | From | Tejun Heo <> | Subject | Re: [PATCH 07/11] blkcg: make request_queue bypassing on allocation |
| |
On Fri, Apr 13, 2012 at 04:44:46PM -0400, Vivek Goyal wrote: > On Fri, Apr 13, 2012 at 01:37:26PM -0700, Tejun Heo wrote: > > [..] > > blk_cleanup_queue() doesn't use blk_queue_bypass_start() to enter > > bypass mode. > > Oh now elevator_exit() has been moved into blk_release_queue(). But > problem will still be there, isn't it? During driver init, most likely driver > is holding last reference of the queue and blk_release_queue() will be called > in the context of blk_cleanup_queue() causing the overhead?
Hmmm? blk_cleanup_queue() will put the queue into bypassing mode without going through synchronize_rcu() and all the following bypassing operations just inc/decs bypass_depth without any draining operation.
Thanks.
-- tejun
| |