lkml.org 
[lkml]   [2008]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 4/5] x86: Add config variables for SMP_MAX
    Ten days ago, Mike wrote:
    > The primary problem arises because of cpumask_t local variables. Until I
    > can deal with these, increasing NR_CPUS to a really large value increases
    > stack size dramatically.
    >
    > Here are the top stack consumers with NR_CPUS = 4k.
    >
    > 16392 isolated_cpu_setup
    > 10328 build_sched_domains

    The problem in kernel/sched.c:isolated_cpu_setup() is an array of
    NR_CPUS integers:

    static int __init isolated_cpu_setup(char *str)
    {
    int ints[NR_CPUS], i;

    str = get_options(str, ARRAY_SIZE(ints), ints);

    Since isolated_cpu_setup() is an __init routine, perhaps we could
    make that ints[] array static __initdata?

    The build_sched_domains() may require more thought and code rework.
    See also the lkml discussion of my patches that reworked the cpuset
    code implementing 'sched_load_balance' calling into build_sched_domains
    () via kernel/sched.c:partition_sched_domains(). This is not performance
    critical code, fortunately.

    --
    I won't rest till it's the best ...
    Programmer, Linux Scalability
    Paul Jackson <pj@sgi.com> 1.940.382.4214


    \
     
     \ /
      Last update: 2008-01-28 17:47    [W:4.555 / U:0.280 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site