diff options
author | Yinghai Lu <yinghai@kernel.org> | 2010-10-11 15:34:09 -0400 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2010-10-11 19:00:52 -0400 |
commit | cd79481d27b9f90aad80c9b972292c42c25bbf8e (patch) | |
tree | 36a04b373218c594d7ff8c3a246da79e0c6632c3 /mm | |
parent | 236260b90dd94516982ad67aa6f5449c4c37db7b (diff) |
memblock: Annotate memblock functions with __init_memblock
Stephen found
WARNING: mm/built-in.o(.text+0x25ab8): Section mismatch in reference from the function memblock_find_base() to the function .init.text:memblock_find_region()
The function memblock_find_base() references
the function __init memblock_find_region().
This is often because memblock_find_base lacks a __init
annotation or the annotation of memblock_find_region is wrong.
So let memblock_find_region() to use __init_memblock instead of __init
directly.
Also fix one function that did not have __init* to be __init_memblock.
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
LKML-Reference: <4CB366B1.40405@kernel.org>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/memblock.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mm/memblock.c b/mm/memblock.c index ae8b06c828c7..400dc62697d7 100644 --- a/mm/memblock.c +++ b/mm/memblock.c | |||
@@ -99,7 +99,7 @@ long __init_memblock memblock_overlaps_region(struct memblock_type *type, phys_a | |||
99 | * are top-down. | 99 | * are top-down. |
100 | */ | 100 | */ |
101 | 101 | ||
102 | static phys_addr_t __init memblock_find_region(phys_addr_t start, phys_addr_t end, | 102 | static phys_addr_t __init_memblock memblock_find_region(phys_addr_t start, phys_addr_t end, |
103 | phys_addr_t size, phys_addr_t align) | 103 | phys_addr_t size, phys_addr_t align) |
104 | { | 104 | { |
105 | phys_addr_t base, res_base; | 105 | phys_addr_t base, res_base; |
@@ -653,7 +653,7 @@ void __init memblock_enforce_memory_limit(phys_addr_t memory_limit) | |||
653 | } | 653 | } |
654 | } | 654 | } |
655 | 655 | ||
656 | static int memblock_search(struct memblock_type *type, phys_addr_t addr) | 656 | static int __init_memblock memblock_search(struct memblock_type *type, phys_addr_t addr) |
657 | { | 657 | { |
658 | unsigned int left = 0, right = type->cnt; | 658 | unsigned int left = 0, right = type->cnt; |
659 | 659 | ||