Revision 6f6b8951897e487ea6f77b90ea01f70a9c363770 authored by Andrey Vagin on 28 August 2013, 23:35:20 UTC, committed by Linus Torvalds on 29 August 2013, 02:26:38 UTC
If the system had a few memory groups and all of them were destroyed, memcg_limited_groups_array_size has non-zero value, but all new caches are created without memcg_params, because memcg_kmem_enabled() returns false. We try to enumirate child caches in a few places and all of them are potentially dangerous. For example my kernel is compiled with CONFIG_SLAB and it crashed when I tryed to mount a NFS share after a few experiments with kmemcg. BUG: unable to handle kernel NULL pointer dereference at 0000000000000008 IP: [<ffffffff8118166a>] do_tune_cpucache+0x8a/0xd0 PGD b942a067 PUD b999f067 PMD 0 Oops: 0000 [#1] SMP Modules linked in: fscache(+) ip6table_filter ip6_tables iptable_filter ip_tables i2c_piix4 pcspkr virtio_net virtio_balloon i2c_core floppy CPU: 0 PID: 357 Comm: modprobe Not tainted 3.11.0-rc7+ #59 Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 task: ffff8800b9f98240 ti: ffff8800ba32e000 task.ti: ffff8800ba32e000 RIP: 0010:[<ffffffff8118166a>] [<ffffffff8118166a>] do_tune_cpucache+0x8a/0xd0 RSP: 0018:ffff8800ba32fb70 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000006 RDX: 0000000000000000 RSI: ffff8800b9f98910 RDI: 0000000000000246 RBP: ffff8800ba32fba0 R08: 0000000000000002 R09: 0000000000000004 R10: 0000000000000001 R11: 0000000000000001 R12: 0000000000000010 R13: 0000000000000008 R14: 00000000000000d0 R15: ffff8800375d0200 FS: 00007f55f1378740(0000) GS:ffff8800bfa00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00007f24feba57a0 CR3: 0000000037b51000 CR4: 00000000000006f0 Call Trace: enable_cpucache+0x49/0x100 setup_cpu_cache+0x215/0x280 __kmem_cache_create+0x2fa/0x450 kmem_cache_create_memcg+0x214/0x350 kmem_cache_create+0x2b/0x30 fscache_init+0x19b/0x230 [fscache] do_one_initcall+0xfa/0x1b0 load_module+0x1c41/0x26d0 SyS_finit_module+0x86/0xb0 system_call_fastpath+0x16/0x1b Signed-off-by: Andrey Vagin <avagin@openvz.org> Cc: Pekka Enberg <penberg@kernel.org> Cc: Christoph Lameter <cl@linux.com> Cc: Glauber Costa <glommer@openvz.org> Cc: Joonsoo Kim <js1304@gmail.com> Cc: Michal Hocko <mhocko@suse.cz> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 21ea9f5
File | Mode | Size |
---|---|---|
ABI | ||
DocBook | ||
EDID | ||
PCI | ||
RCU | ||
accounting | ||
acpi | ||
aoe | ||
arm | ||
arm64 | ||
auxdisplay | ||
backlight | ||
blackfin | ||
block | ||
blockdev | ||
bus-devices | ||
cdrom | ||
cgroups | ||
connector | ||
console | ||
cpu-freq | ||
cpuidle | ||
cris | ||
crypto | ||
development-process | ||
device-mapper | ||
devicetree | ||
driver-model | ||
dvb | ||
early-userspace | ||
extcon | ||
fault-injection | ||
fb | ||
filesystems | ||
firmware_class | ||
fmc | ||
frv | ||
hid | ||
hwmon | ||
i2c | ||
i2o | ||
ia64 | ||
ide | ||
infiniband | ||
input | ||
ioctl | ||
isdn | ||
ja_JP | ||
kbuild | ||
kdump | ||
ko_KR | ||
laptops | ||
leds | ||
m68k | ||
make | ||
memory-devices | ||
metag | ||
mips | ||
misc-devices | ||
mmc | ||
mn10300 | ||
mtd | ||
namespaces | ||
netlabel | ||
networking | ||
nfc | ||
parisc | ||
pcmcia | ||
power | ||
powerpc | ||
pps | ||
prctl | ||
pti | ||
ptp | ||
rapidio | ||
s390 | ||
scheduler | ||
scsi | ||
security | ||
serial | ||
sh | ||
sound | ||
spi | ||
sysctl | ||
target | ||
thermal | ||
timers | ||
trace | ||
usb | ||
vDSO | ||
video4linux | ||
virtual | ||
vm | ||
w1 | ||
watchdog | ||
wimax | ||
x86 | ||
xtensa | ||
zh_CN | ||
.gitignore | -rw-r--r-- | 107 bytes |
00-INDEX | -rw-r--r-- | 16.6 KB |
BUG-HUNTING | -rw-r--r-- | 8.1 KB |
Changes | -rw-r--r-- | 11.7 KB |
CodingStyle | -rw-r--r-- | 30.8 KB |
DMA-API-HOWTO.txt | -rw-r--r-- | 31.3 KB |
DMA-API.txt | -rw-r--r-- | 27.3 KB |
DMA-ISA-LPC.txt | -rw-r--r-- | 5.2 KB |
DMA-attributes.txt | -rw-r--r-- | 4.5 KB |
HOWTO | -rw-r--r-- | 27.2 KB |
IPMI.txt | -rw-r--r-- | 26.1 KB |
IRQ-affinity.txt | -rw-r--r-- | 2.5 KB |
IRQ-domain.txt | -rw-r--r-- | 6.9 KB |
IRQ.txt | -rw-r--r-- | 962 bytes |
Intel-IOMMU.txt | -rw-r--r-- | 3.8 KB |
Makefile | -rw-r--r-- | 174 bytes |
ManagementStyle | -rw-r--r-- | 12.9 KB |
SAK.txt | -rw-r--r-- | 2.8 KB |
SM501.txt | -rw-r--r-- | 2.8 KB |
SecurityBugs | -rw-r--r-- | 1.8 KB |
SubmitChecklist | -rw-r--r-- | 4.4 KB |
SubmittingDrivers | -rw-r--r-- | 6.3 KB |
SubmittingPatches | -rw-r--r-- | 28.9 KB |
VGA-softcursor.txt | -rw-r--r-- | 2.0 KB |
applying-patches.txt | -rw-r--r-- | 19.5 KB |
atomic_ops.txt | -rw-r--r-- | 21.7 KB |
bad_memory.txt | -rw-r--r-- | 1.1 KB |
basic_profiling.txt | -rw-r--r-- | 1.7 KB |
bcache.txt | -rw-r--r-- | 16.4 KB |
binfmt_misc.txt | -rw-r--r-- | 5.9 KB |
braille-console.txt | -rw-r--r-- | 1.4 KB |
bt8xxgpio.txt | -rw-r--r-- | 4.3 KB |
btmrvl.txt | -rw-r--r-- | 2.9 KB |
bus-virt-phys-mapping.txt | -rw-r--r-- | 7.9 KB |
cachetlb.txt | -rw-r--r-- | 17.1 KB |
circular-buffers.txt | -rw-r--r-- | 7.6 KB |
clk.txt | -rw-r--r-- | 8.9 KB |
coccinelle.txt | -rw-r--r-- | 9.0 KB |
cpu-hotplug.txt | -rw-r--r-- | 15.7 KB |
cpu-load.txt | -rw-r--r-- | 3.0 KB |
cputopology.txt | -rw-r--r-- | 3.8 KB |
crc32.txt | -rw-r--r-- | 8.5 KB |
dcdbas.txt | -rw-r--r-- | 3.6 KB |
debugging-modules.txt | -rw-r--r-- | 954 bytes |
debugging-via-ohci1394.txt | -rw-r--r-- | 7.4 KB |
dell_rbu.txt | -rw-r--r-- | 4.9 KB |
devices.txt | -rw-r--r-- | 115.7 KB |
digsig.txt | -rw-r--r-- | 2.8 KB |
dma-buf-sharing.txt | -rw-r--r-- | 20.2 KB |
dmaengine.txt | -rw-r--r-- | 7.6 KB |
dmatest.txt | -rw-r--r-- | 2.8 KB |
dontdiff | -rw-r--r-- | 2.5 KB |
dynamic-debug-howto.txt | -rw-r--r-- | 12.3 KB |
edac.txt | -rw-r--r-- | 24.3 KB |
eisa.txt | -rw-r--r-- | 7.1 KB |
email-clients.txt | -rw-r--r-- | 8.6 KB |
flexible-arrays.txt | -rw-r--r-- | 5.5 KB |
futex-requeue-pi.txt | -rw-r--r-- | 5.0 KB |
gcov.txt | -rw-r--r-- | 7.5 KB |
gpio.txt | -rw-r--r-- | 34.0 KB |
highuid.txt | -rw-r--r-- | 2.4 KB |
hw_random.txt | -rw-r--r-- | 3.5 KB |
hwspinlock.txt | -rw-r--r-- | 12.1 KB |
init.txt | -rw-r--r-- | 2.5 KB |
initrd.txt | -rw-r--r-- | 14.1 KB |
intel_txt.txt | -rw-r--r-- | 10.2 KB |
io-mapping.txt | -rw-r--r-- | 3.2 KB |
io_ordering.txt | -rw-r--r-- | 1.9 KB |
iostats.txt | -rw-r--r-- | 8.0 KB |
irqflags-tracing.txt | -rw-r--r-- | 2.6 KB |
isapnp.txt | -rw-r--r-- | 433 bytes |
java.txt | -rw-r--r-- | 10.7 KB |
kernel-doc-nano-HOWTO.txt | -rw-r--r-- | 11.7 KB |
kernel-docs.txt | -rw-r--r-- | 33.1 KB |
kernel-parameters.txt | -rw-r--r-- | 118.0 KB |
kernel-per-CPU-kthreads.txt | -rw-r--r-- | 11.8 KB |
kmemcheck.txt | -rw-r--r-- | 29.8 KB |
kmemleak.txt | -rw-r--r-- | 7.9 KB |
kobject.txt | -rw-r--r-- | 17.8 KB |
kprobes.txt | -rw-r--r-- | 29.5 KB |
kref.txt | -rw-r--r-- | 8.4 KB |
ldm.txt | -rw-r--r-- | 3.8 KB |
local_ops.txt | -rw-r--r-- | 6.1 KB |
lockdep-design.txt | -rw-r--r-- | 11.6 KB |
lockstat.txt | -rw-r--r-- | 10.7 KB |
lockup-watchdogs.txt | -rw-r--r-- | 3.1 KB |
logo.gif | -rw-r--r-- | 16.0 KB |
logo.txt | -rw-r--r-- | 563 bytes |
magic-number.txt | -rw-r--r-- | 9.7 KB |
md.txt | -rw-r--r-- | 25.3 KB |
media-framework.txt | -rw-r--r-- | 14.7 KB |
memory-barriers.txt | -rw-r--r-- | 82.4 KB |
memory-hotplug.txt | -rw-r--r-- | 15.9 KB |
mono.txt | -rw-r--r-- | 2.5 KB |
mutex-design.txt | -rw-r--r-- | 5.8 KB |
nommu-mmap.txt | -rw-r--r-- | 12.7 KB |
numastat.txt | -rw-r--r-- | 836 bytes |
oops-tracing.txt | -rw-r--r-- | 12.5 KB |
padata.txt | -rw-r--r-- | 7.3 KB |
parport-lowlevel.txt | -rw-r--r-- | 32.2 KB |
parport.txt | -rw-r--r-- | 8.8 KB |
percpu-rw-semaphore.txt | -rw-r--r-- | 1.1 KB |
pi-futex.txt | -rw-r--r-- | 5.7 KB |
pinctrl.txt | -rw-r--r-- | 46.1 KB |
pnp.txt | -rw-r--r-- | 6.8 KB |
preempt-locking.txt | -rw-r--r-- | 5.2 KB |
printk-formats.txt | -rw-r--r-- | 7.0 KB |
pwm.txt | -rw-r--r-- | 4.3 KB |
ramoops.txt | -rw-r--r-- | 4.6 KB |
rbtree.txt | -rw-r--r-- | 13.3 KB |
remoteproc.txt | -rw-r--r-- | 12.3 KB |
rfkill.txt | -rw-r--r-- | 4.7 KB |
robust-futex-ABI.txt | -rw-r--r-- | 8.7 KB |
robust-futexes.txt | -rw-r--r-- | 9.4 KB |
rpmsg.txt | -rw-r--r-- | 13.5 KB |
rt-mutex-design.txt | -rw-r--r-- | 32.8 KB |
rt-mutex.txt | -rw-r--r-- | 3.5 KB |
rtc.txt | -rw-r--r-- | 15.6 KB |
serial-console.txt | -rw-r--r-- | 4.0 KB |
sgi-ioc4.txt | -rw-r--r-- | 2.0 KB |
sgi-visws.txt | -rw-r--r-- | 678 bytes |
smsc_ece1099.txt | -rw-r--r-- | 2.4 KB |
sparse.txt | -rw-r--r-- | 3.8 KB |
spinlocks.txt | -rw-r--r-- | 6.5 KB |
stable_api_nonsense.txt | -rw-r--r-- | 9.2 KB |
stable_kernel_rules.txt | -rw-r--r-- | 4.4 KB |
static-keys.txt | -rw-r--r-- | 11.9 KB |
svga.txt | -rw-r--r-- | 14.1 KB |
sysfs-rules.txt | -rw-r--r-- | 8.1 KB |
sysrq.txt | -rw-r--r-- | 11.6 KB |
this_cpu_ops.txt | -rw-r--r-- | 6.4 KB |
unaligned-memory-access.txt | -rw-r--r-- | 10.0 KB |
unicode.txt | -rw-r--r-- | 6.5 KB |
unshare.txt | -rw-r--r-- | 13.1 KB |
vfio.txt | -rw-r--r-- | 15.9 KB |
vgaarbiter.txt | -rw-r--r-- | 8.1 KB |
video-output.txt | -rw-r--r-- | 1.1 KB |
vme_api.txt | -rw-r--r-- | 13.1 KB |
volatile-considered-harmful.txt | -rw-r--r-- | 5.6 KB |
workqueue.txt | -rw-r--r-- | 14.9 KB |
ww-mutex-design.txt | -rw-r--r-- | 12.4 KB |
xz.txt | -rw-r--r-- | 5.7 KB |
zorro.txt | -rw-r--r-- | 2.8 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...