Re: [PATCH] for_each_possible_cpu [1/19] definesfor_each_possible_cpu

From: Andrew Morton
Date: Wed Mar 15 2006 - 22:57:01 EST


Nick Piggin <nickpiggin@xxxxxxxxxxxx> wrote:
>
> KAMEZAWA Hiroyuki wrote:
> > Now,
> > for_each_cpu() is for-loop cpu over cpu_possible_map.
> > for_each_online_cpu is for-loop cpu over cpu_online_map.
> > .....for_each_cpu() looks bad name.
> >
> > This patch renames for_each_cpu() as for_each_possible_cpu().
> >
> > I also wrote patches to replace all for_each_cpu with for_each_possible_cpu.
> > please confirm....
> >
> > BTW, when HOTPLUC_CPU is not suppoted, using for_each_possible_cpu()
> > should be avoided, I think.
> >
> > all patches are against 2.6.16-rc6-mm1.
> >
>
> for_each_cpu() effectively is for_each_possible_cpu() as far as
> generic code is concerned. In other words, nobody would ever expect
> for_each_cpu to return an _impossible_ CPU, thus you are just
> adding a redundant element to the name.

We've had various screwups and confusions with these things. I think the
new naming is good - it makes developers _think_ before they use it.
Instead of "I want to touch all the CPUs, gee that looks right" they'll
have to stop and decide whether they want to access the online, possible or
present ones and then they'll (hopefully) have a little think about what
happens when CPUs migrate between those states.

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