Messages in this thread | | | From | Jeff Moyer <> | Subject | Re: [PATCH 4/4] cfq-iosched: fix corner cases in idling logic | Date | Wed, 02 Dec 2009 10:13:17 -0500 |
| |
Vivek Goyal <vgoyal@redhat.com> writes:
> Does it make a big difference. cfq_close_cooperator() does not seem to be > relying on coop flag. It will return us a queue if it thinks there is a > close cooperator. (Irrespective of the fact whether cfqq->new_cfqq has bee > setup yet or not). IIUC, cfqq->new_cfqq will be set in select_queue(). So > in case select_queue() has not run yet, then cfqq->new_cfqq = NULL but we > have a close cooperator. > > But I guess this condition will not hit many a times as select_queue() > happens very frequently on NCQ hardware and the moment select queue finds > close cooperator it will expire the current queue and above check will not > even get a chance to turn. > > So IIUC, if we are here cfqq->new_cfqq is always NULL otherwise select_queue() > by now must have expired us and we will not be here. So either we can > completely remove the check or we can just continue with above check.
Wow, I need another cup of coffee for sure. You can just ignore me as I completely misread the code being changed.
Sorry for the noise. I'll go make some coffee.
Cheers, Jeff
| |