`On Mon, Jan 07, 2013 at 08:34:05AM -0800, Tejun Heo wrote:[..]> +        weight leaf_weight> + root :  125    125> + A    :  500    750> + B    :  250    500> + AA   :  500    500> + AB   : 1000    500> +> +root never has a parent making its weight is meaningless. For backward> +compatibility, weight is always kept in sync with leaf_weight. B, AA> +and AB have no child and thus its tasks have no children cgroup to> +compete with. They always get 100% of what the cgroup won at the> +parent level. Considering only the weights which matter, the hierarchy> +looks like the following.> +> +          root> +       /    |   \> +      A     B    leaf> +     500   250   125> +   /  |  \> +  AA  AB  leaf> + 500 1000 750> +> +If all cgroups have active IOs and competing with each other, disk> +time will be distributed like the following.> +> +Distribution below root. The total active weight at this level is> +A:500 + B:250 + C:125 = 875.> +> + root-leaf :   125 /  875      =~ 14%> + A         :   500 /  875      =~ 57%> + B(-leaf)  :   250 /  875      =~ 28%> +> +A has children and further distributes its 57% among the children and> +the implicit leaf node. The total active weight at this level is> +AA:500 + AB:1000 + A-leaf:750 = 2250.> +> + A-leaf    : ( 750 / 2250) * A =~ 19%> + AA(-leaf) : ( 500 / 2250) * A =~ 12%> + AB(-leaf) : (1000 / 2250) * A =~ 25%Hi Tejun,What does (-leaf) is supposed to signify? I can understand that A-leaftells the share of A's tasks which are effectively in A-leaf group. Will just plain AA and AB be more clear?Rest looks good to me. Thanks for updating the blkio-controoler.txt too.ThanksVivek`