diff options
author | Emil Medve <Emilian.Medve@freescale.com> | 2014-04-07 18:37:52 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-07 19:35:58 -0400 |
commit | 136199f0a67cd6bb3f0e8de0ad50f52879f82077 (patch) | |
tree | ac5d4244644aabe7435cc8922376ca14e3235b7b /mm/memblock.c | |
parent | ed6d7c8e578331cad594ee70d60e2e146b5dce7b (diff) |
memblock: use for_each_memblock()
This is a small cleanup.
Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/memblock.c')
-rw-r--r-- | mm/memblock.c | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/mm/memblock.c b/mm/memblock.c index 7fe5354e7552..c5c20c46f97e 100644 --- a/mm/memblock.c +++ b/mm/memblock.c | |||
@@ -1271,16 +1271,14 @@ phys_addr_t __init_memblock memblock_end_of_DRAM(void) | |||
1271 | 1271 | ||
1272 | void __init memblock_enforce_memory_limit(phys_addr_t limit) | 1272 | void __init memblock_enforce_memory_limit(phys_addr_t limit) |
1273 | { | 1273 | { |
1274 | unsigned long i; | ||
1275 | phys_addr_t max_addr = (phys_addr_t)ULLONG_MAX; | 1274 | phys_addr_t max_addr = (phys_addr_t)ULLONG_MAX; |
1275 | struct memblock_region *r; | ||
1276 | 1276 | ||
1277 | if (!limit) | 1277 | if (!limit) |
1278 | return; | 1278 | return; |
1279 | 1279 | ||
1280 | /* find out max address */ | 1280 | /* find out max address */ |
1281 | for (i = 0; i < memblock.memory.cnt; i++) { | 1281 | for_each_memblock(memory, r) { |
1282 | struct memblock_region *r = &memblock.memory.regions[i]; | ||
1283 | |||
1284 | if (limit <= r->size) { | 1282 | if (limit <= r->size) { |
1285 | max_addr = r->base + limit; | 1283 | max_addr = r->base + limit; |
1286 | break; | 1284 | break; |
@@ -1379,13 +1377,12 @@ int __init_memblock memblock_is_region_reserved(phys_addr_t base, phys_addr_t si | |||
1379 | 1377 | ||
1380 | void __init_memblock memblock_trim_memory(phys_addr_t align) | 1378 | void __init_memblock memblock_trim_memory(phys_addr_t align) |
1381 | { | 1379 | { |
1382 | int i; | ||
1383 | phys_addr_t start, end, orig_start, orig_end; | 1380 | phys_addr_t start, end, orig_start, orig_end; |
1384 | struct memblock_type *mem = &memblock.memory; | 1381 | struct memblock_region *r; |
1385 | 1382 | ||
1386 | for (i = 0; i < mem->cnt; i++) { | 1383 | for_each_memblock(memory, r) { |
1387 | orig_start = mem->regions[i].base; | 1384 | orig_start = r->base; |
1388 | orig_end = mem->regions[i].base + mem->regions[i].size; | 1385 | orig_end = r->base + r->size; |
1389 | start = round_up(orig_start, align); | 1386 | start = round_up(orig_start, align); |
1390 | end = round_down(orig_end, align); | 1387 | end = round_down(orig_end, align); |
1391 | 1388 | ||
@@ -1393,11 +1390,12 @@ void __init_memblock memblock_trim_memory(phys_addr_t align) | |||
1393 | continue; | 1390 | continue; |
1394 | 1391 | ||
1395 | if (start < end) { | 1392 | if (start < end) { |
1396 | mem->regions[i].base = start; | 1393 | r->base = start; |
1397 | mem->regions[i].size = end - start; | 1394 | r->size = end - start; |
1398 | } else { | 1395 | } else { |
1399 | memblock_remove_region(mem, i); | 1396 | memblock_remove_region(&memblock.memory, |
1400 | i--; | 1397 | r - memblock.memory.regions); |
1398 | r--; | ||
1401 | } | 1399 | } |
1402 | } | 1400 | } |
1403 | } | 1401 | } |