mbox

Maverick SRU, CONFIG_NR_CPUS=256, LP706058

Message ID 20110121211542.3B86FF89F8@sepang.rtg.net
State Accepted
Delegated to: Tim Gardner
Headers show

Pull-request

git://kernel.ubuntu.com/rtg/ubuntu-maverick.git nr_cpus_256_lp706058

Message

Tim Gardner Jan. 21, 2011, 9:15 p.m. UTC
The following changes since commit fd6181c23bea04ff5a7e85cfaf8fdd7233ca2422:
  Manoj Iyer (1):
        Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15

are available in the git repository at:

  git://kernel.ubuntu.com/rtg/ubuntu-maverick.git nr_cpus_256_lp706058

Tim Gardner (1):
      UBUNTU: [Config] Set CONFIG_NR_CPUS=256 for amd64 server

 debian.master/config/amd64/config.common.amd64    |    1 -
 debian.master/config/amd64/config.flavour.generic |    1 +
 debian.master/config/amd64/config.flavour.server  |    1 +
 debian.master/config/amd64/config.flavour.virtual |    1 +
 4 files changed, 3 insertions(+), 1 deletions(-)

From 4c706219417d6f8491a83f1095b5fee916a342cd Mon Sep 17 00:00:00 2001
From: Tim Gardner <tim.gardner@canonical.com>
Date: Fri, 21 Jan 2011 14:12:56 -0700
Subject: [PATCH] UBUNTU: [Config] Set CONFIG_NR_CPUS=256 for amd64 server

BugLink: http://bugs.launchpad.net/bugs/706058

    The CPU hotplug subsytem allocates memory using the per-cpu mechanism. Enough
    memory is pre-defined by CONFIG_NR_CPUS to accommodate the maximum number of
    CPUs that can be online. This value is discovered at boot time and is used to
    trim the actual memory allocated to the real number of CPUs. In effect,
    CONFIG_NR_CPUS has little impact on memory consumption except for these 9 vairables:

    kernel/cpu.c:static DECLARE_BITMAP(cpu_possible_bits, CONFIG_NR_CPUS) __read_mostly
    kernel/cpu.c:static DECLARE_BITMAP(cpu_possible_bits, CONFIG_NR_CPUS) __read_mostly;
    kernel/cpu.c:static DECLARE_BITMAP(cpu_online_bits, CONFIG_NR_CPUS) __read_mostly;
    kernel/cpu.c:static DECLARE_BITMAP(cpu_present_bits, CONFIG_NR_CPUS) __read_mostly;
    kernel/cpu.c:static DECLARE_BITMAP(cpu_active_bits, CONFIG_NR_CPUS) __read_mostly;
    kernel/sched.c: DECLARE_BITMAP(cpus, CONFIG_NR_CPUS);
    kernel/sched.c: DECLARE_BITMAP(span, CONFIG_NR_CPUS);
    kernel/sched.c: static DECLARE_BITMAP(tmpmask, CONFIG_NR_CPUS);
    mm/slub.c:static DECLARE_BITMAP(kmem_cach_cpu_free_init_once, CONFIG_NR_CPUS);

    The increase in memory size of these variables is negligible since they are bit
    map structures. For example, increasing from 64 to 256 only adds 24 bytes per
    variable.

Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
---
 debian.master/config/amd64/config.common.amd64    |    1 -
 debian.master/config/amd64/config.flavour.generic |    1 +
 debian.master/config/amd64/config.flavour.server  |    1 +
 debian.master/config/amd64/config.flavour.virtual |    1 +
 4 files changed, 3 insertions(+), 1 deletions(-)

Comments

Brad Figg Jan. 21, 2011, 11:33 p.m. UTC | #1
On 01/21/2011 01:15 PM, Tim Gardner wrote:
> The following changes since commit fd6181c23bea04ff5a7e85cfaf8fdd7233ca2422:
>    Manoj Iyer (1):
>          Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15
>
> are available in the git repository at:
>
>    git://kernel.ubuntu.com/rtg/ubuntu-maverick.git nr_cpus_256_lp706058
>
> Tim Gardner (1):
>        UBUNTU: [Config] Set CONFIG_NR_CPUS=256 for amd64 server
>
>   debian.master/config/amd64/config.common.amd64    |    1 -
>   debian.master/config/amd64/config.flavour.generic |    1 +
>   debian.master/config/amd64/config.flavour.server  |    1 +
>   debian.master/config/amd64/config.flavour.virtual |    1 +
>   4 files changed, 3 insertions(+), 1 deletions(-)
>
>  From 4c706219417d6f8491a83f1095b5fee916a342cd Mon Sep 17 00:00:00 2001
> From: Tim Gardner<tim.gardner@canonical.com>
> Date: Fri, 21 Jan 2011 14:12:56 -0700
> Subject: [PATCH] UBUNTU: [Config] Set CONFIG_NR_CPUS=256 for amd64 server
>
> BugLink: http://bugs.launchpad.net/bugs/706058
>
>      The CPU hotplug subsytem allocates memory using the per-cpu mechanism. Enough
>      memory is pre-defined by CONFIG_NR_CPUS to accommodate the maximum number of
>      CPUs that can be online. This value is discovered at boot time and is used to
>      trim the actual memory allocated to the real number of CPUs. In effect,
>      CONFIG_NR_CPUS has little impact on memory consumption except for these 9 vairables:
>
>      kernel/cpu.c:static DECLARE_BITMAP(cpu_possible_bits, CONFIG_NR_CPUS) __read_mostly
>      kernel/cpu.c:static DECLARE_BITMAP(cpu_possible_bits, CONFIG_NR_CPUS) __read_mostly;
>      kernel/cpu.c:static DECLARE_BITMAP(cpu_online_bits, CONFIG_NR_CPUS) __read_mostly;
>      kernel/cpu.c:static DECLARE_BITMAP(cpu_present_bits, CONFIG_NR_CPUS) __read_mostly;
>      kernel/cpu.c:static DECLARE_BITMAP(cpu_active_bits, CONFIG_NR_CPUS) __read_mostly;
>      kernel/sched.c: DECLARE_BITMAP(cpus, CONFIG_NR_CPUS);
>      kernel/sched.c: DECLARE_BITMAP(span, CONFIG_NR_CPUS);
>      kernel/sched.c: static DECLARE_BITMAP(tmpmask, CONFIG_NR_CPUS);
>      mm/slub.c:static DECLARE_BITMAP(kmem_cach_cpu_free_init_once, CONFIG_NR_CPUS);
>
>      The increase in memory size of these variables is negligible since they are bit
>      map structures. For example, increasing from 64 to 256 only adds 24 bytes per
>      variable.
>
> Signed-off-by: Tim Gardner<tim.gardner@canonical.com>
> ---
>   debian.master/config/amd64/config.common.amd64    |    1 -
>   debian.master/config/amd64/config.flavour.generic |    1 +
>   debian.master/config/amd64/config.flavour.server  |    1 +
>   debian.master/config/amd64/config.flavour.virtual |    1 +
>   4 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/debian.master/config/amd64/config.common.amd64 b/debian.master/config/amd64/config.common.amd64
> index ea071e8..c69bef4 100644
> --- a/debian.master/config/amd64/config.common.amd64
> +++ b/debian.master/config/amd64/config.common.amd64
> @@ -153,7 +153,6 @@ CONFIG_NET_TCPPROBE=m
>   CONFIG_NFTL=m
>   CONFIG_NOP_USB_XCEIV=m
>   CONFIG_NO_HZ=y
> -CONFIG_NR_CPUS=64
>   CONFIG_OUTPUT_FORMAT="elf64-x86-64"
>   CONFIG_PARPORT=m
>   CONFIG_PCCARD=m
> diff --git a/debian.master/config/amd64/config.flavour.generic b/debian.master/config/amd64/config.flavour.generic
> index 4804006..5a7befd 100644
> --- a/debian.master/config/amd64/config.flavour.generic
> +++ b/debian.master/config/amd64/config.flavour.generic
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_CFQ=y
>   CONFIG_DEFAULT_IOSCHED="cfq"
>   CONFIG_INTEL_IDLE=y
>   # CONFIG_MEMORY_HOTPLUG is not set
> +CONFIG_NR_CPUS=64
>   # CONFIG_PREEMPT_NONE is not set
>   CONFIG_PREEMPT_VOLUNTARY=y
>   CONFIG_SCSI_SPI_ATTRS=m
> diff --git a/debian.master/config/amd64/config.flavour.server b/debian.master/config/amd64/config.flavour.server
> index b69832c..4a1556f 100644
> --- a/debian.master/config/amd64/config.flavour.server
> +++ b/debian.master/config/amd64/config.flavour.server
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEADLINE=y
>   CONFIG_DEFAULT_IOSCHED="deadline"
>   CONFIG_INTEL_IDLE=y
>   CONFIG_MEMORY_HOTPLUG=y
> +CONFIG_NR_CPUS=256
>   CONFIG_PREEMPT_NONE=y
>   # CONFIG_PREEMPT_VOLUNTARY is not set
>   CONFIG_SCSI_SPI_ATTRS=y
> diff --git a/debian.master/config/amd64/config.flavour.virtual b/debian.master/config/amd64/config.flavour.virtual
> index 217ed9a..d67df42 100644
> --- a/debian.master/config/amd64/config.flavour.virtual
> +++ b/debian.master/config/amd64/config.flavour.virtual
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEADLINE=y
>   CONFIG_DEFAULT_IOSCHED="deadline"
>   # CONFIG_INTEL_IDLE is not set
>   CONFIG_MEMORY_HOTPLUG=y
> +CONFIG_NR_CPUS=64
>   CONFIG_PREEMPT_NONE=y
>   # CONFIG_PREEMPT_VOLUNTARY is not set
>   CONFIG_SCSI_SPI_ATTRS=y

Acked-by: Brad Figg <brad.figg@canonical.com>
Stefan Bader Jan. 24, 2011, 9:12 a.m. UTC | #2
As reasonable here as for Lucid.

On 01/21/2011 10:15 PM, Tim Gardner wrote:
> The following changes since commit fd6181c23bea04ff5a7e85cfaf8fdd7233ca2422:
>   Manoj Iyer (1):
>         Quirk to fix suspend/resume on Lenovo Edge 11,13,14,15
> 
> are available in the git repository at:
> 
>   git://kernel.ubuntu.com/rtg/ubuntu-maverick.git nr_cpus_256_lp706058
> 
> Tim Gardner (1):
>       UBUNTU: [Config] Set CONFIG_NR_CPUS=256 for amd64 server
> 
>  debian.master/config/amd64/config.common.amd64    |    1 -
>  debian.master/config/amd64/config.flavour.generic |    1 +
>  debian.master/config/amd64/config.flavour.server  |    1 +
>  debian.master/config/amd64/config.flavour.virtual |    1 +
>  4 files changed, 3 insertions(+), 1 deletions(-)
> 
> From 4c706219417d6f8491a83f1095b5fee916a342cd Mon Sep 17 00:00:00 2001
> From: Tim Gardner <tim.gardner@canonical.com>
> Date: Fri, 21 Jan 2011 14:12:56 -0700
> Subject: [PATCH] UBUNTU: [Config] Set CONFIG_NR_CPUS=256 for amd64 server
> 
> BugLink: http://bugs.launchpad.net/bugs/706058
> 
>     The CPU hotplug subsytem allocates memory using the per-cpu mechanism. Enough
>     memory is pre-defined by CONFIG_NR_CPUS to accommodate the maximum number of
>     CPUs that can be online. This value is discovered at boot time and is used to
>     trim the actual memory allocated to the real number of CPUs. In effect,
>     CONFIG_NR_CPUS has little impact on memory consumption except for these 9 vairables:
> 
>     kernel/cpu.c:static DECLARE_BITMAP(cpu_possible_bits, CONFIG_NR_CPUS) __read_mostly
>     kernel/cpu.c:static DECLARE_BITMAP(cpu_possible_bits, CONFIG_NR_CPUS) __read_mostly;
>     kernel/cpu.c:static DECLARE_BITMAP(cpu_online_bits, CONFIG_NR_CPUS) __read_mostly;
>     kernel/cpu.c:static DECLARE_BITMAP(cpu_present_bits, CONFIG_NR_CPUS) __read_mostly;
>     kernel/cpu.c:static DECLARE_BITMAP(cpu_active_bits, CONFIG_NR_CPUS) __read_mostly;
>     kernel/sched.c: DECLARE_BITMAP(cpus, CONFIG_NR_CPUS);
>     kernel/sched.c: DECLARE_BITMAP(span, CONFIG_NR_CPUS);
>     kernel/sched.c: static DECLARE_BITMAP(tmpmask, CONFIG_NR_CPUS);
>     mm/slub.c:static DECLARE_BITMAP(kmem_cach_cpu_free_init_once, CONFIG_NR_CPUS);
> 
>     The increase in memory size of these variables is negligible since they are bit
>     map structures. For example, increasing from 64 to 256 only adds 24 bytes per
>     variable.
> 
> Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Stefan Bader <stefan.bader@canonical.com>
> ---
>  debian.master/config/amd64/config.common.amd64    |    1 -
>  debian.master/config/amd64/config.flavour.generic |    1 +
>  debian.master/config/amd64/config.flavour.server  |    1 +
>  debian.master/config/amd64/config.flavour.virtual |    1 +
>  4 files changed, 3 insertions(+), 1 deletions(-)
> 
> diff --git a/debian.master/config/amd64/config.common.amd64 b/debian.master/config/amd64/config.common.amd64
> index ea071e8..c69bef4 100644
> --- a/debian.master/config/amd64/config.common.amd64
> +++ b/debian.master/config/amd64/config.common.amd64
> @@ -153,7 +153,6 @@ CONFIG_NET_TCPPROBE=m
>  CONFIG_NFTL=m
>  CONFIG_NOP_USB_XCEIV=m
>  CONFIG_NO_HZ=y
> -CONFIG_NR_CPUS=64
>  CONFIG_OUTPUT_FORMAT="elf64-x86-64"
>  CONFIG_PARPORT=m
>  CONFIG_PCCARD=m
> diff --git a/debian.master/config/amd64/config.flavour.generic b/debian.master/config/amd64/config.flavour.generic
> index 4804006..5a7befd 100644
> --- a/debian.master/config/amd64/config.flavour.generic
> +++ b/debian.master/config/amd64/config.flavour.generic
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_CFQ=y
>  CONFIG_DEFAULT_IOSCHED="cfq"
>  CONFIG_INTEL_IDLE=y
>  # CONFIG_MEMORY_HOTPLUG is not set
> +CONFIG_NR_CPUS=64
>  # CONFIG_PREEMPT_NONE is not set
>  CONFIG_PREEMPT_VOLUNTARY=y
>  CONFIG_SCSI_SPI_ATTRS=m
> diff --git a/debian.master/config/amd64/config.flavour.server b/debian.master/config/amd64/config.flavour.server
> index b69832c..4a1556f 100644
> --- a/debian.master/config/amd64/config.flavour.server
> +++ b/debian.master/config/amd64/config.flavour.server
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEADLINE=y
>  CONFIG_DEFAULT_IOSCHED="deadline"
>  CONFIG_INTEL_IDLE=y
>  CONFIG_MEMORY_HOTPLUG=y
> +CONFIG_NR_CPUS=256
>  CONFIG_PREEMPT_NONE=y
>  # CONFIG_PREEMPT_VOLUNTARY is not set
>  CONFIG_SCSI_SPI_ATTRS=y
> diff --git a/debian.master/config/amd64/config.flavour.virtual b/debian.master/config/amd64/config.flavour.virtual
> index 217ed9a..d67df42 100644
> --- a/debian.master/config/amd64/config.flavour.virtual
> +++ b/debian.master/config/amd64/config.flavour.virtual
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEADLINE=y
>  CONFIG_DEFAULT_IOSCHED="deadline"
>  # CONFIG_INTEL_IDLE is not set
>  CONFIG_MEMORY_HOTPLUG=y
> +CONFIG_NR_CPUS=64
>  CONFIG_PREEMPT_NONE=y
>  # CONFIG_PREEMPT_VOLUNTARY is not set
>  CONFIG_SCSI_SPI_ATTRS=y
Tim Gardner Jan. 24, 2011, 1:53 p.m. UTC | #3
On 01/24/2011 02:12 AM, Stefan Bader wrote:
> Acked-by: Stefan Bader<stefan.bader@canonical.com>

applied and pushed