diff options
author | Dave Airlie <airlied@starflyer.(none)> | 2005-07-30 23:34:09 -0400 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2005-07-30 23:34:09 -0400 |
commit | 727e6e932d76f05f8691a32bbeabd1061b051a3b (patch) | |
tree | 07572434f36144336e4d4d05f68de840f45db96b /mm/page_alloc.c | |
parent | bdf242eeb0f69567fe43eba93889d80ecacbfe94 (diff) | |
parent | 889371f61fd5bb914d0331268f12432590cf7e85 (diff) |
Merge ../linux-2.6/
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r-- | mm/page_alloc.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 42bccfb8464d..8d088371196a 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
@@ -1061,20 +1061,19 @@ unsigned int nr_free_pages_pgdat(pg_data_t *pgdat) | |||
1061 | 1061 | ||
1062 | static unsigned int nr_free_zone_pages(int offset) | 1062 | static unsigned int nr_free_zone_pages(int offset) |
1063 | { | 1063 | { |
1064 | pg_data_t *pgdat; | 1064 | /* Just pick one node, since fallback list is circular */ |
1065 | pg_data_t *pgdat = NODE_DATA(numa_node_id()); | ||
1065 | unsigned int sum = 0; | 1066 | unsigned int sum = 0; |
1066 | 1067 | ||
1067 | for_each_pgdat(pgdat) { | 1068 | struct zonelist *zonelist = pgdat->node_zonelists + offset; |
1068 | struct zonelist *zonelist = pgdat->node_zonelists + offset; | 1069 | struct zone **zonep = zonelist->zones; |
1069 | struct zone **zonep = zonelist->zones; | 1070 | struct zone *zone; |
1070 | struct zone *zone; | ||
1071 | 1071 | ||
1072 | for (zone = *zonep++; zone; zone = *zonep++) { | 1072 | for (zone = *zonep++; zone; zone = *zonep++) { |
1073 | unsigned long size = zone->present_pages; | 1073 | unsigned long size = zone->present_pages; |
1074 | unsigned long high = zone->pages_high; | 1074 | unsigned long high = zone->pages_high; |
1075 | if (size > high) | 1075 | if (size > high) |
1076 | sum += size - high; | 1076 | sum += size - high; |
1077 | } | ||
1078 | } | 1077 | } |
1079 | 1078 | ||
1080 | return sum; | 1079 | return sum; |