Messages in this thread | | | Date | Thu, 2 Feb 2012 15:37:08 -0500 | From | Vivek Goyal <> | Subject | Re: [PATCH 02/11] block: relocate elevator initialized test from blk_cleanup_queue() to blk_drain_queue() |
| |
On Thu, Feb 02, 2012 at 12:35:13PM -0800, Tejun Heo wrote: > Hello, > > On Thu, Feb 02, 2012 at 03:20:42PM -0500, Vivek Goyal wrote: > > > @@ -359,6 +359,13 @@ EXPORT_SYMBOL(blk_put_queue); > > > */ > > > void blk_drain_queue(struct request_queue *q, bool drain_all) > > > { > > > + /* > > > + * The caller might be trying to tear down @q before its elevator > > > + * is initialized, in which case we don't want to call into it. > > > + */ > > > + if (!q->elevator) > > > + return; > > > + > > > > Shouldn't blk_throtl_drain() be called irrespective of the fact whether > > elevator is initilialized or not? On bio based drivers, there will be > > no elevator but bios can still be throttled. > > Hmmm... probably, but doesn't that mean the code is already broken for > bio based drivers using throtl?
Yes looks like it is already broken for bio based drivers. So it is a fix independent of this patch/patch series.
Thanks Vivek
| |