lkml.org 
[lkml]   [2010]   [Jun]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: PROBLEM: Off-by-one bug on sun4u SMP
From
From: Ryan Davis <iconoclasmandheresy@gmail.com>
Date: Thu, 10 Jun 2010 11:05:09 -0700

> On at least some sun4u machines, the CPU numbering starts at one not 0.
> This causes an off-by-one bug as other parts of the code assume
> zero-based numbering.
>
> If you set max-cpus in the kernel config to the actual number of CPUs,
> the last CPU will be ignored and unused.
> This is because the CPU numbering starts at 1 but the code to check
> against max-cpus assumes a zero-based numbering.
>
> On my computer: Sun Ultra 60 2x450mhz Ultrasparc.
> Building with max-cpus of 2 ignores the second cpu because 2 (one
> based cpu number) >= 2 (zero based max cpus)
> Rebuilding with a larger max-cpus is a workaround but non optimal.

max-cpus means "one larger than the maximum PHYSICAL cpu number", not
the number of cpus. That's what this setting means, at least on
sparc64.


\
 
 \ /
  Last update: 2010-06-11 02:39    [from the cache]
©2003-2011 Jasper Spaans