diff options
author | Will Deacon <will.deacon@arm.com> | 2015-10-13 09:01:06 -0400 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2015-10-13 09:54:42 -0400 |
commit | 83040123fde42ec532d3b632efb5f7f84024e61d (patch) | |
tree | 668de0164f4db8ac50f426839770edd5139a8b51 | |
parent | 4fc57692268bf841a3cc90b3b056640de2bb1605 (diff) |
arm64: kasan: fix issues reported by sparse
Sparse reports some new issues introduced by the kasan patches:
arch/arm64/mm/kasan_init.c:91:13: warning: no previous prototype for
'kasan_early_init' [-Wmissing-prototypes] void __init kasan_early_init(void)
^
arch/arm64/mm/kasan_init.c:91:13: warning: symbol 'kasan_early_init'
was not declared. Should it be static? [sparse]
This patch resolves the problem by adding a prototype for
kasan_early_init and marking the function as asmlinkage, since it's only
called from head.S.
Signed-off-by: Will Deacon <will.deacon@arm.com>
Acked-by: Andrey Ryabinin <ryabinin.a.a@gmail.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
-rw-r--r-- | arch/arm64/include/asm/kasan.h | 2 | ||||
-rw-r--r-- | arch/arm64/mm/kasan_init.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm64/include/asm/kasan.h b/arch/arm64/include/asm/kasan.h index 71dfe14acdca..2774fa384c47 100644 --- a/arch/arm64/include/asm/kasan.h +++ b/arch/arm64/include/asm/kasan.h | |||
@@ -5,6 +5,7 @@ | |||
5 | 5 | ||
6 | #ifdef CONFIG_KASAN | 6 | #ifdef CONFIG_KASAN |
7 | 7 | ||
8 | #include <linux/linkage.h> | ||
8 | #include <asm/memory.h> | 9 | #include <asm/memory.h> |
9 | 10 | ||
10 | /* | 11 | /* |
@@ -27,6 +28,7 @@ | |||
27 | #define KASAN_SHADOW_OFFSET (KASAN_SHADOW_END - (1ULL << (64 - 3))) | 28 | #define KASAN_SHADOW_OFFSET (KASAN_SHADOW_END - (1ULL << (64 - 3))) |
28 | 29 | ||
29 | void kasan_init(void); | 30 | void kasan_init(void); |
31 | asmlinkage void kasan_early_init(void); | ||
30 | 32 | ||
31 | #else | 33 | #else |
32 | static inline void kasan_init(void) { } | 34 | static inline void kasan_init(void) { } |
diff --git a/arch/arm64/mm/kasan_init.c b/arch/arm64/mm/kasan_init.c index b6a92f5dd568..cf038c7d9fa9 100644 --- a/arch/arm64/mm/kasan_init.c +++ b/arch/arm64/mm/kasan_init.c | |||
@@ -88,7 +88,7 @@ static void __init kasan_map_early_shadow(void) | |||
88 | } while (pgd++, addr = next, addr != end); | 88 | } while (pgd++, addr = next, addr != end); |
89 | } | 89 | } |
90 | 90 | ||
91 | void __init kasan_early_init(void) | 91 | asmlinkage void __init kasan_early_init(void) |
92 | { | 92 | { |
93 | BUILD_BUG_ON(KASAN_SHADOW_OFFSET != KASAN_SHADOW_END - (1UL << 61)); | 93 | BUILD_BUG_ON(KASAN_SHADOW_OFFSET != KASAN_SHADOW_END - (1UL << 61)); |
94 | BUILD_BUG_ON(!IS_ALIGNED(KASAN_SHADOW_START, PGDIR_SIZE)); | 94 | BUILD_BUG_ON(!IS_ALIGNED(KASAN_SHADOW_START, PGDIR_SIZE)); |