RE: How to initialize complex per-cpu variables?

Perez-Gonzalez, Inaky (inaky.perez-gonzalez@intel.com)
Fri, 6 Jun 2003 13:44:23 -0700


> From: Dipankar Sarma [mailto:dipankar@in.ibm.com]
>
> On Thu, Jun 05, 2003 at 09:35:37PM +0000, Perez-Gonzalez, Inaky wrote:
> > Now the question is: how do I walk each structure that is
> > associated to each CPU - I mean, something like:
> >
> > struct rtf_h *h;
> > for_each_cpu (h, rtf_lh) {
> > rtf_h_init (h);
> > }
>
> One way to do this would be to do -
>
> for (i = 0; i < NR_CPUS; i++) {
> if (cpu_possible(i))
> rtf_h_init(&per_cpu(rtf_lh, i));
> }

Yeap, that is a way ...

> However you might want to actually use the CPU notifiers to do this. See
> rcu_init() in kernel/rcupdate.c.

Aha ... that is the bit I was missing - cool, thanks; the only thing,
although I don't think I will have a problem with it, is that the
notifiers are going to be called before my __initcall, probably (or
even worse, there is no defined order) ... well, I don't think that
will be a problem.

Thanks so much,

Iñaky Pérez-González -- Not speaking for Intel -- all opinions are my own
(and my fault)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/