Re: [PATCH] percpu data: only iterate over possible CPUs

From: Jens Axboe
Date: Tue Feb 07 2006 - 10:27:52 EST


On Tue, Feb 07 2006, Heiko Carstens wrote:
> > tree 8c30052a0d7fadec37c785a42a71b28d0a9c5fcf
> > parent cef5076987dd545ac74f4efcf1c962be8eac34b0
> > author Eric Dumazet <dada1@xxxxxxxxxxxxx> Sun, 05 Feb 2006 15:27:36 -0800
> > committer Linus Torvalds <torvalds@xxxxxxxxxxx> Mon, 06 Feb 2006 03:06:51 -0800
> >
> > [PATCH] percpu data: only iterate over possible CPUs
> >
> > percpu_data blindly allocates bootmem memory to store NR_CPUS instances of
> > cpudata, instead of allocating memory only for possible cpus.
> >
> > As a preparation for changing that, we need to convert various 0 -> NR_CPUS
> > loops to use for_each_cpu().
> >
> > (The above only applies to users of asm-generic/percpu.h. powerpc has gone it
> > alone and is presently only allocating memory for present CPUs, so it's
> > currently corrupting memory).
>
> This patch is broken since it replaces several loops that iterate NR_CPUS
> times with for_each_cpu before cpu_possible_map is setup:

Hrmpf, chicking and egg - we must not initialize data for unknown CPUs,
but we can't check since it's not setup.

To me it sounds really broken that core structures like that are not
setup before we init eg fs stuff.

--
Jens Axboe

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