lkml.org 
[lkml]   [2008]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: x86-64 NODES_SHIFT compile failure.
    Dave Jones wrote:
    > 4323838215184f5a2f081e0d17b8d60731b03164 added this line to x86's Kconfig..
    >
    > config NODES_SHIFT
    > int
    > + range 1 15 if X86_64
    > default "6" if X86_64
    > default "4" if X86_NUMAQ
    > default "3"
    >
    > Selecting 15 causes:
    >
    > drivers/base/node.c: In function ‘node_read_distance’:
    > drivers/base/node.c:140: error: size of array ‘type name’ is negative
    >
    > Should the upper limit be reduced to 14 (which compiles), or should
    > the BUILD_BUG_ON be changed to somehow cope with this set of changes?
    >
    > Dave
    >

    A later patch changed it to 9 which is the current real limit of NODES_SHIFT
    (or at least the fully tested limit). I think it might be in Ingo's
    sched/latest tree, but here it is again.. (cleaned up with MAXSMP not included.)


    Subject: [PATCH 1/1] x86: change maximum NR_CPUS to 4096 and MAX_NUMNODES to 512

    * Change the range of NR_CPUS from 2-255 to 2-4096 and change the
    range of MAX_NUMNODES (NODES_SHIFT) from 1-32768 to 1-512.

    * Alter comment about how much each increment of NR_CPUS consumes.
    (This was found by configuring for 256 cpus and then 512 cpus
    and dividing the difference by 256.)

    Signed-off-by: Mike Travis <travis@sgi.com>
    ---
    arch/x86/Kconfig | 12 ++++++------
    1 file changed, 6 insertions(+), 6 deletions(-)

    --- linux-2.6-next.orig/arch/x86/Kconfig
    +++ linux-2.6-next/arch/x86/Kconfig
    @@ -566,18 +566,18 @@ config IOMMU_HELPER
    def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB)

    config NR_CPUS
    - int "Maximum number of CPUs (2-255)"
    - range 2 255
    + int "Maximum number of CPUs (2-4096)"
    + range 2 4096
    depends on SMP
    default "32" if X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000
    default "8"
    help
    This allows you to specify the maximum number of CPUs which this
    - kernel will support. The maximum supported value is 255 and the
    + kernel will support. The maximum supported value is 4096 and the
    minimum value which makes sense is 2.

    This is purely to save memory - each supported CPU adds
    - approximately eight kilobytes to the kernel image.
    + approximately one kilobyte to the kernel image.

    config SCHED_SMT
    bool "SMT (Hyperthreading) scheduler support"
    @@ -969,8 +969,8 @@ config NUMA_EMU
    number of nodes. This is only useful for debugging.

    config NODES_SHIFT
    - int "Max num nodes shift(1-15)"
    - range 1 15 if X86_64
    + int "Max num nodes shift(1-9)"
    + range 1 9 if X86_64
    default "6" if X86_64
    default "4" if X86_NUMAQ
    default "3"
    --
    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/
    \
     
     \ /
      Last update: 2008-05-16 19:47    [W:0.024 / U:33.780 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site