diff options
| author | Mel Gorman <[email protected]> | 2007-08-22 21:02:05 +0000 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2007-08-23 02:52:47 +0000 |
| commit | b377fd3982ad957c796758a90e2988401a884241 (patch) | |
| tree | 3d7449ccdf7038bffffa9323873f4095cc1ac6ce /fs/proc/array.c | |
| parent | au1100fb: move au1100fb_fb_blank() beforce au1100fb_setmode() (diff) | |
| download | kernel-b377fd3982ad957c796758a90e2988401a884241.tar.gz kernel-b377fd3982ad957c796758a90e2988401a884241.zip | |
Apply memory policies to top two highest zones when highest zone is ZONE_MOVABLE
The NUMA layer only supports NUMA policies for the highest zone. When
ZONE_MOVABLE is configured with kernelcore=, the the highest zone becomes
ZONE_MOVABLE. The result is that policies are only applied to allocations
like anonymous pages and page cache allocated from ZONE_MOVABLE when the
zone is used.
This patch applies policies to the two highest zones when the highest zone
is ZONE_MOVABLE. As ZONE_MOVABLE consists of pages from the highest "real"
zone, it's always functionally equivalent.
The patch has been tested on a variety of machines both NUMA and non-NUMA
covering x86, x86_64 and ppc64. No abnormal results were seen in
kernbench, tbench, dbench or hackbench. It passes regression tests from
the numactl package with and without kernelcore= once numactl tests are
patched to wait for vmstat counters to update.
akpm: this is the nasty hack to fix NUMA mempolicies in the presence of
ZONE_MOVABLE and kernelcore= in 2.6.23. Christoph says "For .24 either merge
the mobility or get the other solution that Mel is working on. That solution
would only use a single zonelist per node and filter on the fly. That may
help performance and also help to make memory policies work better."
Signed-off-by: Mel Gorman <[email protected]>
Acked-by: Lee Schermerhorn <[email protected]>
Tested-by: Lee Schermerhorn <[email protected]>
Acked-by: Christoph Lameter <[email protected]>
Cc: Andi Kleen <[email protected]>
Cc: Paul Mundt <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'fs/proc/array.c')
0 files changed, 0 insertions, 0 deletions
