summaryrefslogtreecommitdiff
path: root/mm/kasan
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2018-08-03 17:55:12 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2018-08-03 17:55:12 +0800
commitc5f5aeef9b55b362ad5a0e04e4b41cd63b208842 (patch)
tree0ee2bb561e879db0a990d998359f6516dff3393b /mm/kasan
parenta4789089937941959be6c18fa53e1fc0189257fd (diff)
parentc7513c2a2714204d3588ecaa170ae628fd0d217e (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
Merge mainline to pick up c7513c2a2714 ("crypto/arm64: aes-ce-gcm - add missing kernel_neon_begin/end pair").
Diffstat (limited to 'mm/kasan')
-rw-r--r--mm/kasan/kasan.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/mm/kasan/kasan.c b/mm/kasan/kasan.c
index f185455b3406..c3bd5209da38 100644
--- a/mm/kasan/kasan.c
+++ b/mm/kasan/kasan.c
@@ -619,12 +619,13 @@ void kasan_kfree_large(void *ptr, unsigned long ip)
int kasan_module_alloc(void *addr, size_t size)
{
void *ret;
+ size_t scaled_size;
size_t shadow_size;
unsigned long shadow_start;
shadow_start = (unsigned long)kasan_mem_to_shadow(addr);
- shadow_size = round_up(size >> KASAN_SHADOW_SCALE_SHIFT,
- PAGE_SIZE);
+ scaled_size = (size + KASAN_SHADOW_MASK) >> KASAN_SHADOW_SCALE_SHIFT;
+ shadow_size = round_up(scaled_size, PAGE_SIZE);
if (WARN_ON(!PAGE_ALIGNED(shadow_start)))
return -EINVAL;