Re: [git pull] cpus4096 fixes
From: Ingo Molnar
Date: Mon Jul 28 2008 - 14:52:35 EST
* Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
>
>
> On Mon, 28 Jul 2008, Linus Torvalds wrote:
> >
> > Here's a trivial setup, that is even tested. It's _small_ too.
> >
> > /* cpu_bit_bitmap[0] is empty - so we can back into it */
> > #define MASK_DECLARE_1(x) [x+1][0] = 1ul << (x)
> > #define MASK_DECLARE_2(x) MASK_DECLARE_1(x), MASK_DECLARE_1(x+1)
> > #define MASK_DECLARE_4(x) MASK_DECLARE_2(x), MASK_DECLARE_2(x+2)
> > #define MASK_DECLARE_8(x) MASK_DECLARE_4(x), MASK_DECLARE_4(x+4)
> >
> > static const unsigned long cpu_bit_bitmap[BITS_PER_LONG+1][BITS_TO_LONGS(NR_CPUS)] = {
> > MASK_DECLARE_8(0), MASK_DECLARE_8(8),
> > MASK_DECLARE_8(16), MASK_DECLARE_8(24),
> > #if BITS_PER_LONG > 32
> > MASK_DECLARE_8(32), MASK_DECLARE_8(40),
> > MASK_DECLARE_8(48), MASK_DECLARE_8(56),
> > #endif
> > };
> >
> > static inline const cpumask_t *get_cpu_mask(unsigned int nr)
> > {
> > const unsigned long *p = cpu_bit_bitmap[1 + nr % BITS_PER_LONG];
> > p -= nr / BITS_PER_LONG;
> > return (const cpumask_t *)p;
> > }
>
> Btw, Ingo, can we get this issue resolved asap, please?
>
> I was planning on doing -rc1 today, but this kind of hangs over me.
> The above three lines of code (and more lines of macro initializers)
> obviously does need some more testing, but if you hook it into the
> other changes you already had, maybe we can get it done.
>
> Hmm?
yeah, i'm on it. If everything goes well hopefully i'll have something
pullable in 1-2 hours, if that's ok as a timeframe.
Ingo
--
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/