diff options
author | Andrew Morton <akpm@osdl.org> | 2006-01-06 00:11:14 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-06 08:33:27 -0800 |
commit | 210fe530305ee50cd889fe9250168228b2994f32 (patch) | |
tree | 4d22a28cf28abded5f77daef5b025c04d1ffea56 /mm/swap.c | |
parent | 41e9b63b35b52cf918a4ffdb8d77862ab824aa8b (diff) | |
download | lwn-210fe530305ee50cd889fe9250168228b2994f32.tar.gz lwn-210fe530305ee50cd889fe9250168228b2994f32.zip |
[PATCH] vmscan: balancing fix
Revert a patch which went into 2.6.8-rc1. The changelog for that patch was:
The shrink_zone() logic can, under some circumstances, cause far too many
pages to be reclaimed. Say, we're scanning at high priority and suddenly
hit a large number of reclaimable pages on the LRU.
Change things so we bale out when SWAP_CLUSTER_MAX pages have been
reclaimed.
Problem is, this change caused significant imbalance in inter-zone scan
balancing by truncating scans of larger zones.
Suppose, for example, ZONE_HIGHMEM is 10x the size of ZONE_NORMAL. The zone
balancing algorithm would require that if we're scanning 100 pages of
ZONE_HIGHMEM, we should scan 10 pages of ZONE_NORMAL. But this logic will
cause the scanning of ZONE_HIGHMEM to bale out after only 32 pages are
reclaimed. Thus effectively causing smaller zones to be scanned relatively
harder than large ones.
Now I need to remember what the workload was which caused me to write this
patch originally, then fix it up in a different way...
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/swap.c')
0 files changed, 0 insertions, 0 deletions