[PATCH 02/20] io-controller: Common flat fair queuing code in elevaotor layer

Jeff Moyer jmoyer at redhat.com
Mon Jun 22 19:20:24 PDT 2009


Vivek Goyal <vgoyal at redhat.com> writes:

> On Mon, Jun 22, 2009 at 02:16:12PM +0530, Balbir Singh wrote:
>> > +	ioq->pid = current->pid;
>> 
>> Is pid used for cgroup association later? I don't see why we save the
>> pid otherwise? If yes, why not store the cgroup of the current->pid?
>> 
>
> This is just for logging purposes (blktrace), useful for CFQ where every task
> context sets up one queue and this number becomes the identifier for the queue.
> Look at elv_log_ioq(), which uses ioq->pid.

Well, that's not 100% accurate as tasks can share I/O contexts.
However, the 1:1 mapping does hold true most of the time.

> [..]
>> > + * coop tells that io scheduler selected a queue for us and we did not
>> 
>> coop?
>
> coop refers to "cooperating". I guess "coop" is not descriptive. I will
> change the name to "cooperating" and also put more description for
> clarity.

I think just more description is fine.  I'm not sure you need to spell
out cooperating (that will make for some long lines!).

>> > +	struct io_queue *async_idle_queue;
>> > +
>> > +	/*
>> > +	 * Used to track any pending rt requests so we can pre-empt current
>> > +	 * non-RT cfqq in service when this value is non-zero.
>> > +	 */
>> > +	unsigned int busy_rt_queues;
>> > +};
>> > +
>> > +struct elv_fq_data {
>> 
>> What does fq stand for?
>
> Fair queuing. Any suggestions to make it better?

I think you could just put it in the comment.

Cheers,
Jeff


More information about the Containers mailing list