Re: [PATCH][-mm] memcg : memory cgroup cpu hotplug support update.

Balbir Singh
2010-09-20T07:54:42Z

* Hiroyuki Kamezawa <kamezawa.hiroyuki@gmail.com> [2010-09-17 20:49:09]:

> 2010/9/17 Balbir Singh <balbir@linux.vnet.ibm.com>:
> > * KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> [2010-09-16 16:17:27]:
> >
> >> On Thu, 16 Sep 2010 15:22:04 +0900
> >> KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> wrote:
> >>
> >> > This naming is from mem_cgroup_walk_tree(). Now we have
> >> >
> >> >   mem_cgroup_walk_tree();
> >> >   mem_cgroup_walk_all();
> >> >
> >> > Rename both ? But it should be in separated patch.
> >> >
> >>
> >> Considering a bit ...but..
> >>
> >> #define for_each_mem_cgroup(mem) \
> >>       for (mem = mem_cgroup_get_first(); \
> >>            mem; \
> >>            mem = mem_cgroup_get_next(mem);) \
> >>
> >> seems to need some helper functions. I'll consider about this clean up
> >> but it requires some amount of patch because css_get()/css_put()/rcu...etc..
> >> are problematic.
> >>
> >
> > Why does this need to be a macro (I know we use this for lists and
> > other places), assuming for now we don't use the iterator pattern, we
> > can rename mem_cgroup_walk_all() to for_each_mem_cgroup().
> >
>
> When I see for_each in the kernel source, I expect iterator and macro.
> When I see "walk" in the kernel source, I expect callback and visit function.
>

I understand that is the convention we used thus far. When I see
for_each for walk, I presume iterators, doesn't matter if we have a
call back or not. I'll leave the decision to you.

--
Three Cheers,
Balbir