Revision 494de90098784b8e2797598cefdd34188884ec2e authored by Mel Gorman on 03 July 2008, 04:27:51 UTC, committed by Linus Torvalds on 03 July 2008, 16:22:59 UTC
The non-NUMA case of build_zonelist_cache() would initialize the
zlcache_ptr for both node_zonelists[] to NULL.

Which is problematic, since non-NUMA only has a single node_zonelists[]
entry, and trying to zero the non-existent second one just overwrote the
nr_zones field instead.

As kswapd uses this value to determine what reclaim work is necessary,
the result is that kswapd never reclaims.  This causes processes to
stall frequently in low-memory situations as they always direct reclaim.
This patch initialises zlcache_ptr correctly.

Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Tested-by: Dan Williams <dan.j.williams@intel.com>
[ Simplified patch a bit ]
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent c461a97
History
File Mode Size
ABI
DocBook
PCI
RCU
accounting
acpi
aoe
arm
auxdisplay
blackfin
block
cdrom
connector
console
controllers
cpu-freq
cpuidle
cris
crypto
device-mapper
driver-model
dvb
early-userspace
fault-injection
fb
filesystems
firmware_class
frv
hwmon
i2c
i2o
i386
ia64
ide
infiniband
input
ioctl
isdn
ja_JP
kbuild
kdump
ko_KR
laptops
lguest
m68k
make
mips
mn10300
namespaces
netlabel
networking
parisc
pcmcia
power
powerpc
prctl
s390
scheduler
scsi
serial
sh
sound
sparc
spi
sysctl
telephony
thermal
timers
uml
usb
video4linux
vm
w1
watchdog
x86
x86_64
zh_CN
00-INDEX -rw-r--r-- 13.3 KB
BUG-HUNTING -rw-r--r-- 8.1 KB
Changes -rw-r--r-- 11.3 KB
CodingStyle -rw-r--r-- 28.6 KB
DMA-API.txt -rw-r--r-- 23.0 KB
DMA-ISA-LPC.txt -rw-r--r-- 5.2 KB
DMA-attributes.txt -rw-r--r-- 1.0 KB
DMA-mapping.txt -rw-r--r-- 27.2 KB
HOWTO -rw-r--r-- 28.6 KB
IO-mapping.txt -rw-r--r-- 7.8 KB
IPMI.txt -rw-r--r-- 27.0 KB
IRQ-affinity.txt -rw-r--r-- 1.3 KB
IRQ.txt -rw-r--r-- 962 bytes
Intel-IOMMU.txt -rw-r--r-- 3.9 KB
MSI-HOWTO.txt -rw-r--r-- 22.6 KB
ManagementStyle -rw-r--r-- 12.9 KB
README.DAC960 -rw-r--r-- 33.9 KB
README.cycladesZ -rw-r--r-- 293 bytes
SAK.txt -rw-r--r-- 2.9 KB
SM501.txt -rw-r--r-- 2.8 KB
SecurityBugs -rw-r--r-- 1.8 KB
Smack.txt -rw-r--r-- 19.8 KB
SubmitChecklist -rw-r--r-- 3.3 KB
SubmittingDrivers -rw-r--r-- 6.2 KB
SubmittingPatches -rw-r--r-- 24.2 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-- 19.0 KB
basic_profiling.txt -rw-r--r-- 1.7 KB
binfmt_misc.txt -rw-r--r-- 6.0 KB
braille-console.txt -rw-r--r-- 1.4 KB
cachetlb.txt -rw-r--r-- 15.9 KB
cciss.txt -rw-r--r-- 6.8 KB
cgroups.txt -rw-r--r-- 20.6 KB
cli-sti-removal.txt -rw-r--r-- 3.9 KB
computone.txt -rw-r--r-- 17.2 KB
cpqarray.txt -rw-r--r-- 2.2 KB
cpu-hotplug.txt -rw-r--r-- 14.9 KB
cpu-load.txt -rw-r--r-- 3.0 KB
cpusets.txt -rw-r--r-- 34.3 KB
cputopology.txt -rw-r--r-- 1.6 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.5 KB
dell_rbu.txt -rw-r--r-- 4.9 KB
devices.txt -rw-r--r-- 115.8 KB
digiepca.txt -rw-r--r-- 3.7 KB
dontdiff -rw-r--r-- 1.8 KB
edac.txt -rw-r--r-- 20.8 KB
eisa.txt -rw-r--r-- 7.1 KB
email-clients.txt -rw-r--r-- 7.9 KB
exception.txt -rw-r--r-- 12.1 KB
feature-removal-schedule.txt -rw-r--r-- 11.3 KB
floppy.txt -rw-r--r-- 8.3 KB
gpio.txt -rw-r--r-- 20.7 KB
hayes-esp.txt -rw-r--r-- 6.5 KB
highuid.txt -rw-r--r-- 2.4 KB
hpet.txt -rw-r--r-- 6.4 KB
hw_random.txt -rw-r--r-- 3.5 KB
initrd.txt -rw-r--r-- 14.1 KB
io_ordering.txt -rw-r--r-- 1.9 KB
ioctl-number.txt -rw-r--r-- 7.1 KB
iostats.txt -rw-r--r-- 7.9 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-- 9.7 KB
kernel-docs.txt -rw-r--r-- 34.8 KB
kernel-parameters.txt -rw-r--r-- 68.0 KB
keys-request-key.txt -rw-r--r-- 7.4 KB
keys.txt -rw-r--r-- 46.2 KB
kobject.txt -rw-r--r-- 16.7 KB
kprobes.txt -rw-r--r-- 20.6 KB
kref.txt -rw-r--r-- 6.2 KB
ldm.txt -rw-r--r-- 3.9 KB
leds-class.txt -rw-r--r-- 3.8 KB
local_ops.txt -rw-r--r-- 6.1 KB
lockdep-design.txt -rw-r--r-- 8.8 KB
lockstat.txt -rw-r--r-- 6.5 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
markers.txt -rw-r--r-- 3.4 KB
mca.txt -rw-r--r-- 11.3 KB
md.txt -rw-r--r-- 18.3 KB
memory-barriers.txt -rw-r--r-- 76.2 KB
memory-hotplug.txt -rw-r--r-- 13.4 KB
memory.txt -rw-r--r-- 2.1 KB
mono.txt -rw-r--r-- 2.5 KB
moxa-smartio -rw-r--r-- 16.3 KB
mtrr.txt -rw-r--r-- 10.2 KB
mutex-design.txt -rw-r--r-- 5.8 KB
nbd.txt -rw-r--r-- 1.9 KB
nmi_watchdog.txt -rw-r--r-- 4.1 KB
nommu-mmap.txt -rw-r--r-- 10.2 KB
numastat.txt -rw-r--r-- 861 bytes
oops-tracing.txt -rw-r--r-- 12.3 KB
paride.txt -rw-r--r-- 16.7 KB
parport-lowlevel.txt -rw-r--r-- 32.2 KB
parport.txt -rw-r--r-- 8.8 KB
pi-futex.txt -rw-r--r-- 5.7 KB
pnp.txt -rw-r--r-- 6.8 KB
preempt-locking.txt -rw-r--r-- 5.2 KB
prio_tree.txt -rw-r--r-- 5.2 KB
ramdisk.txt -rw-r--r-- 6.2 KB
rbtree.txt -rw-r--r-- 6.6 KB
rfkill.txt -rw-r--r-- 3.5 KB
riscom8.txt -rw-r--r-- 1.3 KB
robust-futex-ABI.txt -rw-r--r-- 8.7 KB
robust-futexes.txt -rw-r--r-- 9.4 KB
rocket.txt -rw-r--r-- 7.6 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.1 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
sparse.txt -rw-r--r-- 2.8 KB
specialix.txt -rw-r--r-- 14.8 KB
spinlocks.txt -rw-r--r-- 8.8 KB
stable_api_nonsense.txt -rw-r--r-- 9.2 KB
stable_kernel_rules.txt -rw-r--r-- 2.8 KB
stallion.txt -rw-r--r-- 17.6 KB
svga.txt -rw-r--r-- 14.1 KB
sx.txt -rw-r--r-- 11.3 KB
sysfs-rules.txt -rw-r--r-- 8.2 KB
sysrq.txt -rw-r--r-- 10.1 KB
tty.txt -rw-r--r-- 10.3 KB
unaligned-memory-access.txt -rw-r--r-- 8.9 KB
unicode.txt -rw-r--r-- 6.5 KB
unshare.txt -rw-r--r-- 13.1 KB
video-output.txt -rw-r--r-- 1.1 KB
volatile-considered-harmful.txt -rw-r--r-- 5.6 KB
voyager.txt -rw-r--r-- 3.4 KB
zorro.txt -rw-r--r-- 2.8 KB

README.DAC960

back to top