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
File | Mode | Size |
---|---|---|
Kconfig | -rw-r--r-- | 2.7 KB |
Makefile | -rw-r--r-- | 422 bytes |
addr.c | -rw-r--r-- | 3.8 KB |
addr.h | -rw-r--r-- | 603 bytes |
atm_misc.c | -rw-r--r-- | 2.6 KB |
atm_sysfs.c | -rw-r--r-- | 3.9 KB |
br2684.c | -rw-r--r-- | 20.7 KB |
clip.c | -rw-r--r-- | 24.6 KB |
common.c | -rw-r--r-- | 20.0 KB |
common.h | -rw-r--r-- | 1.5 KB |
ioctl.c | -rw-r--r-- | 3.7 KB |
lec.c | -rw-r--r-- | 66.3 KB |
lec.h | -rw-r--r-- | 5.1 KB |
lec_arpc.h | -rw-r--r-- | 2.9 KB |
mpc.c | -rw-r--r-- | 39.2 KB |
mpc.h | -rw-r--r-- | 1.9 KB |
mpoa_caches.c | -rw-r--r-- | 14.7 KB |
mpoa_caches.h | -rw-r--r-- | 3.0 KB |
mpoa_proc.c | -rw-r--r-- | 6.9 KB |
pppoatm.c | -rw-r--r-- | 10.6 KB |
proc.c | -rw-r--r-- | 11.6 KB |
protocols.h | -rw-r--r-- | 379 bytes |
pvc.c | -rw-r--r-- | 3.5 KB |
raw.c | -rw-r--r-- | 1.8 KB |
resources.c | -rw-r--r-- | 9.4 KB |
resources.h | -rw-r--r-- | 984 bytes |
signaling.c | -rw-r--r-- | 6.8 KB |
signaling.h | -rw-r--r-- | 838 bytes |
svc.c | -rw-r--r-- | 15.6 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...