summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorNick Hu <nickhu@andestech.com>2021-01-13 10:24:10 +0800
committerPalmer Dabbelt <palmerdabbelt@google.com>2021-01-13 20:50:11 -0800
commitc25a053e15778f6b4d6553708673736e27a6c2cf (patch)
tree8da5cfab4dd7dfeeddaff02ddb2eccd87d42704b /arch
parent0aa2ec8a475fb505fd98d93bbcf4e03beeeebcb6 (diff)
riscv: Fix KASAN memory mapping.
Use virtual address instead of physical address when translating the address to shadow memory by kasan_mem_to_shadow(). Signed-off-by: Nick Hu <nickhu@andestech.com> Signed-off-by: Nylon Chen <nylon7@andestech.com> Fixes: b10d6bca8720 ("arch, drivers: replace for_each_membock() with for_each_mem_range()") Cc: stable@vger.kernel.org Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/riscv/mm/kasan_init.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/riscv/mm/kasan_init.c b/arch/riscv/mm/kasan_init.c
index 12ddd1f6bf70..a8a2ffd9114a 100644
--- a/arch/riscv/mm/kasan_init.c
+++ b/arch/riscv/mm/kasan_init.c
@@ -93,8 +93,8 @@ void __init kasan_init(void)
VMALLOC_END));
for_each_mem_range(i, &_start, &_end) {
- void *start = (void *)_start;
- void *end = (void *)_end;
+ void *start = (void *)__va(_start);
+ void *end = (void *)__va(_end);
if (start >= end)
break;