Re: [PATCH 07/12] cfq-iosched: implement hierarchy-ready cfq_groupcharge scaling

From: Tejun Heo
Date: Mon Dec 17 2012 - 17:12:58 EST


Hey, Vivek.

On Mon, Dec 17, 2012 at 04:49:11PM -0500, Vivek Goyal wrote:
> > Eh? Then how would it compete with the children cfqgs? You can
> > consider it as the hidden leaf node competing with the children cfqgs,
> > right? So, you take the leaf weight and divide it by the total active
> > weight of all the children (including the hidden leaf node). It isn't
> > different from the rest of the calculation. It just looks different
> > because leaf_weight is stored elsewhere and we look down there and
> > then walke up. The calculation being done is exactly the same one.
>
> Again it is coming from multiplexing cfqg and cfqg->task_group. So
> effectively we are calculating the vfraction of task_group inside cfqg.

Or calculating the fraction of the hidden leaf node.

> Once you say cfqg->vfraction, I immediately think of total share of
> group (including task_group and all children cgroups).

Any tasks should be treated as member of the hidden leaf node, so...

> May be cfqg->task_group_vfraction (or cfqg->tg_fraction) is a better name.

I don't know. Wouldn't just explaining clearly in the comment e
enough? I think the name "vfraction" is already weird enough to
indicate that it's something which you need to read explanation about.
If that explanation is readily available as comment, I think it should
be okay.

> Also descrition says.
>
> /* vfraction the fraction of vdisktime that a cfqg is entitled to */
>
> May be we can clarify it that it is share of task_group of cfqg.

Yeah, no objection. Let's beef up the explanation there.

> I guess i am too familiar with how cpu has done it. I think I am getting
> confused with properties which belong to cfqg and properties which
> belong to cfqg->task_group.
>
> I guess if we prefix fields belong to task_group with somete suitable
> string, it might become little easier to understand.

I usually am not a big fan of adding wordy prefixes. I think they
tend to obfuscate/frustrate more than help. Let's stick a weird (that
is, non-generic) name to something weird and explain it well in the
comment.

Thanks.

--
tejun
--
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/