summaryrefslogtreecommitdiffstats
path: root/arch/mips64/sgi-ip27/ip27-memory.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips64/sgi-ip27/ip27-memory.c')
-rw-r--r--arch/mips64/sgi-ip27/ip27-memory.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/mips64/sgi-ip27/ip27-memory.c b/arch/mips64/sgi-ip27/ip27-memory.c
index eb5ac3c87..0394d2ca0 100644
--- a/arch/mips64/sgi-ip27/ip27-memory.c
+++ b/arch/mips64/sgi-ip27/ip27-memory.c
@@ -310,6 +310,11 @@ void __init mem_init(void)
for (nid = 0; nid < numnodes; nid++) {
/*
+ * Hack till free_area_init_core() zeroes free_pages
+ */
+ for (tmp = 0; tmp < MAX_NR_ZONES; tmp++)
+ PLAT_NODE_DATA(nid)->gendata.node_zones[tmp].free_pages=0;
+ /*
* This will free up the bootmem, ie, slot 0 memory.
*/
totalram_pages += free_all_bootmem_node(nid);
@@ -354,8 +359,8 @@ void __init mem_init(void)
reservedpages = ram = 0;
for (nid = 0; nid < numnodes; nid++) {
for (tmp = PLAT_NODE_DATA_STARTNR(nid); tmp <
- ((PLAT_NODE_DATA_STARTNR(nid)) +
- (PLAT_NODE_DATA_SIZE(nid) >> PAGE_SHIFT)); tmp++) {
+ (PLAT_NODE_DATA_STARTNR(nid) +
+ PLAT_NODE_DATA_SIZE(nid)); tmp++) {
/* Ignore holes */
if (PageSkip(mem_map+tmp))
continue;