Re: [ckrm-tech] [RFC][PATCH 6/8] RSS controller shares allocation

Pavel Emelianov
2006-11-10T10:32:14Z

[snip]

>>> + for_each_child(child, res->rgroup) {
>>> + child_res = get_memctlr(child);
>>> + BUG_ON(!child_res);
>>> + recalc_and_propagate(child_res, res);
>> Recursion? Won't it eat all the stack in case of a deep tree?
>
> The depth of the hierarchy can be controlled. Recursion is needed
> to do a DFS walk

That's another point against recursion - bad root can
crash the kernel... If we are about to give container's
users ability to make their own subtrees then we *must*
avoid recursion. There's an algorithm that allows one
to walk the tree like this w/o recursion.

[snip]

>> I didn't find where in this patches this callback is called.
>
> It's a part of the resource groups infrastructure. It's been ported
> on top of Paul Menage's containers patches. The code can be easily
> adapted to work directly with containers instead of resource groups
> if required.

Could you please give me a link to the patch where this
is called?