[Lucid] SRU: Fix soft lockup and failure of c1.xlarge instances

Andy Whitcroft apw at canonical.com
Tue Mar 30 11:00:23 UTC 2010


On Fri, Mar 26, 2010 at 12:55:04PM -0700, John Johansen wrote:
> The following changes since commit 314aa5eee7fde6b64d76a227c67131deb3a40ce7:
>   Andy Whitcroft (1):
>         UBUNTU: Start new release
> 
> are available in the git repository at:
> 
>   git://kernel.ubuntu.com/jj/ubuntu-lucid ec2
> 
> John Johansen (1):
>       UBUNTU: [Config] fix EC2 config to remove soft lockup issue
> 
>  debian.ec2/config/amd64/config.common.amd64 |    2 ++
>  debian.ec2/config/config.common.ubuntu      |   10 +++-------
>  debian.ec2/config/i386/config.common.i386   |    1 +
>  debian.ec2/config/i386/config.flavour.ec2   |    1 +
>  debian/config/enforce                       |    4 ++++
>  5 files changed, 11 insertions(+), 7 deletions(-)

> commit 0ebe9462cdeeeecb941ec2b87ccabcf5822cb083
> Author: John Johansen <john.johansen at canonical.com>
> Date:   Wed Mar 24 00:35:32 2010 -0700
> 
>     UBUNTU: [Config] fix EC2 config to remove soft lockup issue
>     
>     Update the configs to deal with lockups that occur under some EC2 instance
>     sizes.
>     
>     BugLink: http://bugs.launchpad.net/bugs/527208
>     BugLink: http://bugs.launchpad.net/bugs/540378
>     
>     Signed-off-by: John Johansen <john.johansen at canonical.com>
> 
> diff --git a/debian.ec2/config/amd64/config.common.amd64 b/debian.ec2/config/amd64/config.common.amd64
> index e6fa9f3..0d5ef06 100644
> --- a/debian.ec2/config/amd64/config.common.amd64
> +++ b/debian.ec2/config/amd64/config.common.amd64
> @@ -16,8 +16,10 @@ CONFIG_HAVE_CPUMASK_OF_CPU_MAP=y
>  # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
>  # CONFIG_KTIME_SCALAR is not set
>  # CONFIG_M686 is not set
> +CONFIG_NR_CPUS=64
>  CONFIG_OUTPUT_FORMAT="elf64-x86-64"
>  CONFIG_PHONE=m
> +CONFIG_PHYSICAL_START=0x1000000
>  CONFIG_RCU_FANOUT=64
>  # CONFIG_REGULATOR_DEBUG is not set
>  CONFIG_RWSEM_GENERIC_SPINLOCK=y
> diff --git a/debian.ec2/config/config.common.ubuntu b/debian.ec2/config/config.common.ubuntu
> index 535727b..9d663ff 100644
> --- a/debian.ec2/config/config.common.ubuntu
> +++ b/debian.ec2/config/config.common.ubuntu
> @@ -515,6 +515,7 @@ CONFIG_DEBUG_RODATA=y
>  # CONFIG_DEBUG_RT_MUTEXES is not set
>  # CONFIG_DEBUG_SG is not set
>  # CONFIG_DEBUG_SHIRQ is not set
> +# CONFIG_DEBUG_SLAB is not set
>  # CONFIG_DEBUG_SPINLOCK is not set
>  # CONFIG_DEBUG_SPINLOCK_SLEEP is not set
>  # CONFIG_DEBUG_STACKOVERFLOW is not set
> @@ -1902,7 +1903,6 @@ CONFIG_NOP_TRACER=y
>  # CONFIG_NOP_USB_XCEIV is not set
>  CONFIG_NOZOMI=m
>  CONFIG_NO_IDLE_HZ=y
> -CONFIG_NR_CPUS=32
>  CONFIG_NS83820=m
>  CONFIG_NSC_FIR=m
>  CONFIG_NSC_GPIO=m
> @@ -2065,7 +2065,6 @@ CONFIG_PHANTOM=m
>  # CONFIG_PHONE_IXJ is not set
>  CONFIG_PHYLIB=y
>  CONFIG_PHYSICAL_ALIGN=0x2000
> -CONFIG_PHYSICAL_START=0x100000
>  CONFIG_PHYS_ADDR_T_64BIT=y
>  CONFIG_PID_NS=y
>  CONFIG_PLIP=m
> @@ -2487,7 +2486,7 @@ CONFIG_SKGE=m
>  # CONFIG_SKGE_DEBUG is not set
>  CONFIG_SKY2=m
>  # CONFIG_SKY2_DEBUG is not set
> -# CONFIG_SLAB is not set
> +CONFIG_SLAB=y
>  CONFIG_SLABINFO=y
>  CONFIG_SLHC=y
>  CONFIG_SLIP=m
> @@ -2497,10 +2496,7 @@ CONFIG_SLIP_SMART=y
>  # CONFIG_SLOB is not set
>  CONFIG_SLOW_WORK=y
>  # CONFIG_SLOW_WORK_DEBUG is not set
> -CONFIG_SLUB=y
> -CONFIG_SLUB_DEBUG=y
> -# CONFIG_SLUB_DEBUG_ON is not set
> -# CONFIG_SLUB_STATS is not set
> +# CONFIG_SLUB is not set
>  # CONFIG_SMARTJOYPLUS_FF is not set
>  CONFIG_SMB_FS=m
>  # CONFIG_SMB_NLS_DEFAULT is not set
> diff --git a/debian.ec2/config/i386/config.common.i386 b/debian.ec2/config/i386/config.common.i386
> index ec6fb2e..eb80473 100644
> --- a/debian.ec2/config/i386/config.common.i386
> +++ b/debian.ec2/config/i386/config.common.i386
> @@ -18,6 +18,7 @@ CONFIG_KTIME_SCALAR=y
>  CONFIG_M686=y
>  CONFIG_OUTPUT_FORMAT="elf32-i386"
>  # CONFIG_PHONE is not set
> +CONFIG_PHYSICAL_START=0x100000
>  CONFIG_RCU_FANOUT=32
>  CONFIG_REGULATOR_DEBUG=y
>  # CONFIG_RWSEM_GENERIC_SPINLOCK is not set
> diff --git a/debian.ec2/config/i386/config.flavour.ec2 b/debian.ec2/config/i386/config.flavour.ec2
> index e25820e..10e0d8b 100644
> --- a/debian.ec2/config/i386/config.flavour.ec2
> +++ b/debian.ec2/config/i386/config.flavour.ec2
> @@ -1,3 +1,4 @@
>  #
>  # Config options for config.flavour.ec2 automatically generated by splitconfig.pl
>  #
> +CONFIG_NR_CPUS=64
> diff --git a/debian/config/enforce b/debian/config/enforce
> index 1f18e70..c4b87e0 100644
> --- a/debian/config/enforce
> +++ b/debian/config/enforce
> @@ -29,3 +29,7 @@ value CONFIG_USB_DEVICEFS n
>  # upstart requires DEVTMPFS be enabled and mounted by default.
>  value CONFIG_DEVTMPFS y
>  value CONFIG_DEVTMPFS_MOUNT y
> +
> +# EC2 requires certain configs set or bad things happen
> +value CONFIG_SLAB y
> +

Looks sane, and a good use of the enforcer.  I wonder if we should have
a separate optional file for the branch too to prevent collissions.
Regardless:

Acked-by: Andy Whitcroft <apw at canonical.com>

-apw




More information about the kernel-team mailing list