aboutsummaryrefslogtreecommitdiffstats
path: root/mm/memblock.c
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@codeaurora.org>2012-05-24 03:45:21 -0400
committerIngo Molnar <mingo@kernel.org>2012-06-08 05:59:46 -0400
commiteab309494ae2b9e15f85520f00de3893162c2e43 (patch)
treedd0b7ae9b455e9b999665dc8dbcd51679fdade70 /mm/memblock.c
parent8a173b1476d126674104c7c5c6cef0bcd824b001 (diff)
memblock: Document memblock_is_region_{memory,reserved}()
At first glance one would think that memblock_is_region_memory() and memblock_is_region_reserved() would be implemented in the same way. Unfortunately they aren't and the former returns whether the region specified is a subset of a memory bank while the latter returns whether the region specified intersects with reserved memory. Document the two functions so that users aren't tempted to make the implementation the same between them and to clarify the purpose of the functions. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Cc: Tejun Heo <tj@kernel.org> Link: http://lkml.kernel.org/r/1337845521-32755-1-git-send-email-sboyd@codeaurora.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'mm/memblock.c')
-rw-r--r--mm/memblock.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/mm/memblock.c b/mm/memblock.c
index 952123eba433..32a0a5e4d79d 100644
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@ -867,6 +867,16 @@ int __init_memblock memblock_is_memory(phys_addr_t addr)
867 return memblock_search(&memblock.memory, addr) != -1; 867 return memblock_search(&memblock.memory, addr) != -1;
868} 868}
869 869
870/**
871 * memblock_is_region_memory - check if a region is a subset of memory
872 * @base: base of region to check
873 * @size: size of region to check
874 *
875 * Check if the region [@base, @base+@size) is a subset of a memory block.
876 *
877 * RETURNS:
878 * 0 if false, non-zero if true
879 */
870int __init_memblock memblock_is_region_memory(phys_addr_t base, phys_addr_t size) 880int __init_memblock memblock_is_region_memory(phys_addr_t base, phys_addr_t size)
871{ 881{
872 int idx = memblock_search(&memblock.memory, base); 882 int idx = memblock_search(&memblock.memory, base);
@@ -879,6 +889,16 @@ int __init_memblock memblock_is_region_memory(phys_addr_t base, phys_addr_t size
879 memblock.memory.regions[idx].size) >= end; 889 memblock.memory.regions[idx].size) >= end;
880} 890}
881 891
892/**
893 * memblock_is_region_reserved - check if a region intersects reserved memory
894 * @base: base of region to check
895 * @size: size of region to check
896 *
897 * Check if the region [@base, @base+@size) intersects a reserved memory block.
898 *
899 * RETURNS:
900 * 0 if false, non-zero if true
901 */
882int __init_memblock memblock_is_region_reserved(phys_addr_t base, phys_addr_t size) 902int __init_memblock memblock_is_region_reserved(phys_addr_t base, phys_addr_t size)
883{ 903{
884 memblock_cap_size(base, &size); 904 memblock_cap_size(base, &size);