aboutsummaryrefslogtreecommitdiffstats
path: root/mm/page_alloc.c
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@engr.sgi.com>2006-01-06 03:11:17 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-06 11:33:28 -0500
commit4be38e351c5f455f6f490f5aff29053e33ab4f99 (patch)
treefd7ba3678cdb5750894f58034f47076dd38c64ae /mm/page_alloc.c
parent1a93205bdffd9d7278d4a66081cdb48452522a58 (diff)
[PATCH] mm: move determination of policy_zone into page allocator
Currently the function to build a zonelist for a BIND policy has the side effect to set the policy_zone. This seems to be a bit strange. policy zone seems to not be initialized elsewhere and therefore 0. Do we police ZONE_DMA if no bind policy has been used yet? This patch moves the determination of the zone to apply policies to into the page allocator. We determine the zone while building the zonelist for nodes. Signed-off-by: Christoph Lameter <clameter@sgi.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r--mm/page_alloc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 7adc9526d329..512e3f4d4963 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -36,6 +36,7 @@
36#include <linux/memory_hotplug.h> 36#include <linux/memory_hotplug.h>
37#include <linux/nodemask.h> 37#include <linux/nodemask.h>
38#include <linux/vmalloc.h> 38#include <linux/vmalloc.h>
39#include <linux/mempolicy.h>
39 40
40#include <asm/tlbflush.h> 41#include <asm/tlbflush.h>
41#include "internal.h" 42#include "internal.h"
@@ -1470,6 +1471,7 @@ static int __init build_zonelists_node(pg_data_t *pgdat,
1470 BUG_ON(zone - pgdat->node_zones > ZONE_NORMAL); 1471 BUG_ON(zone - pgdat->node_zones > ZONE_NORMAL);
1471#endif 1472#endif
1472 zonelist->zones[j++] = zone; 1473 zonelist->zones[j++] = zone;
1474 check_highest_zone(k);
1473 } 1475 }
1474 } 1476 }
1475 return j; 1477 return j;