summaryrefslogtreecommitdiff
path: root/mm/bootmem.c
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@linaro.org>2014-11-24 14:50:07 +0000
committerGrant Likely <grant.likely@linaro.org>2014-11-24 14:50:07 +0000
commit66e6a5a1fcd2f3e05f4d499b539a1f77ceb52d1d (patch)
treed72f980f64b88ea4e976215a503fcb038e02f981 /mm/bootmem.c
parent2d0747c4b68be8eb8ccfa2c538f2f5dd2ea89094 (diff)
parent5d01410fe4d92081f349b013a2e7a95429e4f2c9 (diff)
downloadlinux-66e6a5a1fcd2f3e05f4d499b539a1f77ceb52d1d.tar.gz
linux-66e6a5a1fcd2f3e05f4d499b539a1f77ceb52d1d.tar.xz
Merge tag 'v3.18-rc6' into devicetree/next
v3.18-rc6 contains an important DT bug fix, c1a2086e2d, "of/selftest: Fix off-by-one error in removal path" which affects testing of the overlay patch series. Merge it into the devicetree/next staging branch so that the overlay patches are applied on top of a known working tree. Linux 3.18-rc6 Conflicts: drivers/of/address.c
Diffstat (limited to 'mm/bootmem.c')
-rw-r--r--mm/bootmem.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/mm/bootmem.c b/mm/bootmem.c
index 8a000cebb0d7..477be696511d 100644
--- a/mm/bootmem.c
+++ b/mm/bootmem.c
@@ -243,13 +243,10 @@ static unsigned long __init free_all_bootmem_core(bootmem_data_t *bdata)
static int reset_managed_pages_done __initdata;
-static inline void __init reset_node_managed_pages(pg_data_t *pgdat)
+void reset_node_managed_pages(pg_data_t *pgdat)
{
struct zone *z;
- if (reset_managed_pages_done)
- return;
-
for (z = pgdat->node_zones; z < pgdat->node_zones + MAX_NR_ZONES; z++)
z->managed_pages = 0;
}
@@ -258,8 +255,12 @@ void __init reset_all_zones_managed_pages(void)
{
struct pglist_data *pgdat;
+ if (reset_managed_pages_done)
+ return;
+
for_each_online_pgdat(pgdat)
reset_node_managed_pages(pgdat);
+
reset_managed_pages_done = 1;
}