aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>2015-11-05 18:50:46 -0800
committerAlex Shi <alex.shi@linaro.org>2016-04-11 15:57:58 +0800
commitca928ebaa686b48dbb18cf9a1db9749f5fdbe2f3 (patch)
tree7ce44d67f7586c6a37234b2721ea2c1bbffd78ed
parent6383489c530f694edc7643034198444c960f6748 (diff)
mm/kasan: MODULE_VADDR is not available on all archs
Use is_module_address instead Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Reviewed-by: Andrey Ryabinin <ryabinin.a.a@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit 527f215b78976e94995dce7163b07539b576d519) Signed-off-by: Alex Shi <alex.shi@linaro.org>
-rw-r--r--mm/kasan/report.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/mm/kasan/report.c b/mm/kasan/report.c
index ba916b1bd0e7..9474364da6e1 100644
--- a/mm/kasan/report.c
+++ b/mm/kasan/report.c
@@ -22,6 +22,7 @@
#include <linux/string.h>
#include <linux/types.h>
#include <linux/kasan.h>
+#include <linux/module.h>
#include <asm/sections.h>
@@ -85,9 +86,11 @@ static void print_error_description(struct kasan_access_info *info)
static inline bool kernel_or_module_addr(const void *addr)
{
- return (addr >= (void *)_stext && addr < (void *)_end)
- || (addr >= (void *)MODULES_VADDR
- && addr < (void *)MODULES_END);
+ if (addr >= (void *)_stext && addr < (void *)_end)
+ return true;
+ if (is_module_address((unsigned long)addr))
+ return true;
+ return false;
}
static inline bool init_task_stack_addr(const void *addr)