[Crash-utility] HEADS-UP: Linux 3.13-rc1 failures with CONFIG_MAXSMP and CONFIG_SLAB

Dave Anderson anderson at redhat.com
Wed Nov 27 21:42:47 UTC 2013



----- Original Message -----

> Secondly, if the 3.11-rc1 kernel is configured with CONFIG_SLAB, the crash
> session will fail with a segmentation violation.  Here is an example with a
> crash version that has a bumped-up NR_CPUS and configured to use CONFIG_SLAB:
>   
>   # crash vmlinux vmcore
>   
>   crash 7.0.4rc17
>   Copyright (C) 2002-2013  Red Hat, Inc.
>   Copyright (C) 2004, 2005, 2006, 2010  IBM Corporation
>   Copyright (C) 1999-2006  Hewlett-Packard Co
>   Copyright (C) 2005, 2006, 2011, 2012  Fujitsu Limited
>   Copyright (C) 2006, 2007  VA Linux Systems Japan K.K.
>   Copyright (C) 2005, 2011  NEC Corporation
>   Copyright (C) 1999, 2002, 2007  Silicon Graphics, Inc.
>   Copyright (C) 1999, 2000, 2001, 2002  Mission Critical Linux, Inc.
>   This program is free software, covered by the GNU General Public License,
>   and you are welcome to change it and/or distribute copies of it under
>   certain conditions.  Enter "help copying" to see the conditions.
>   This program has absolutely no warranty.  Enter "help warranty" for
>   details.
>    
>   GNU gdb (GDB) 7.6
>   Copyright (C) 2013 Free Software Foundation, Inc.
>   License GPLv3+: GNU GPL version 3 or later
>   <http://gnu.org/licenses/gpl.html>
>   This is free software: you are free to change and redistribute it.
>   There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
>   and "show warranty" for details.
>   This GDB was configured as "x86_64-unknown-linux-gnu"...
>   
>   please wait... (gathering kmem slab cache data)Segmentation fault
>   
> 
> Although I haven't tested recent CONFIG_SLAB kernels (Fedora and RHEL use CONFIG_SLUB
> by default) I believe this is related to this patch-set that was pulled into
> Linux 3.13:

Further testing shows that the segmentation violation above will only 
occur in Linux 3.8 and later kernels if:

  (1) the kernel is configured with CONFIG_SLAB, and
  (2) the sum of the kernel's NR_CPUS and MAX_NUMNODES values exceed
      the NR_CPUS value compiled into the crash utility.

That would be fairly unlikely, but it is true in with the "CONFIG_MAXSMP" setup
I'm testing with now.  Typically (2) above is not true, and the crash session will
come up OK.

However, the 3.13 "slab-overload" patch that I pointed to here:
 
  https://lkml.org/lkml/2013/10/16/155
  
  From: Joonsoo Kim <>
  Subject: [PATCH v2 00/15] slab: overload struct slab over struct page to reduce memory usage
  Date: Wed, 16 Oct 2013 17:43:57 +0900

is the real issue at hand, because it will require a significant fix to support
CONFIG_SLAB kernels.

Thanks,
  Dave




More information about the Crash-utility mailing list