diff options
Diffstat (limited to 'mm')
-rw-r--r-- | mm/sparse.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/mm/sparse.c b/mm/sparse.c index e8f36e4796d0..54f3940406cb 100644 --- a/mm/sparse.c +++ b/mm/sparse.c | |||
@@ -176,7 +176,7 @@ unsigned long __init node_memmap_size_bytes(int nid, unsigned long start_pfn, | |||
176 | if (nid != early_pfn_to_nid(pfn)) | 176 | if (nid != early_pfn_to_nid(pfn)) |
177 | continue; | 177 | continue; |
178 | 178 | ||
179 | if (pfn_valid(pfn)) | 179 | if (pfn_present(pfn)) |
180 | nr_pages += PAGES_PER_SECTION; | 180 | nr_pages += PAGES_PER_SECTION; |
181 | } | 181 | } |
182 | 182 | ||
@@ -206,11 +206,12 @@ struct page *sparse_decode_mem_map(unsigned long coded_mem_map, unsigned long pn | |||
206 | static int __meminit sparse_init_one_section(struct mem_section *ms, | 206 | static int __meminit sparse_init_one_section(struct mem_section *ms, |
207 | unsigned long pnum, struct page *mem_map) | 207 | unsigned long pnum, struct page *mem_map) |
208 | { | 208 | { |
209 | if (!valid_section(ms)) | 209 | if (!present_section(ms)) |
210 | return -EINVAL; | 210 | return -EINVAL; |
211 | 211 | ||
212 | ms->section_mem_map &= ~SECTION_MAP_MASK; | 212 | ms->section_mem_map &= ~SECTION_MAP_MASK; |
213 | ms->section_mem_map |= sparse_encode_mem_map(mem_map, pnum); | 213 | ms->section_mem_map |= sparse_encode_mem_map(mem_map, pnum) | |
214 | SECTION_HAS_MEM_MAP; | ||
214 | 215 | ||
215 | return 1; | 216 | return 1; |
216 | } | 217 | } |
@@ -256,7 +257,7 @@ void __init sparse_init(void) | |||
256 | struct page *map; | 257 | struct page *map; |
257 | 258 | ||
258 | for (pnum = 0; pnum < NR_MEM_SECTIONS; pnum++) { | 259 | for (pnum = 0; pnum < NR_MEM_SECTIONS; pnum++) { |
259 | if (!valid_section_nr(pnum)) | 260 | if (!present_section_nr(pnum)) |
260 | continue; | 261 | continue; |
261 | 262 | ||
262 | map = sparse_early_mem_map_alloc(pnum); | 263 | map = sparse_early_mem_map_alloc(pnum); |