]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blobdiff - mm/kasan/generic.c
Merge tag 'csky-for-linus-5.4-rc1' of git://github.com/c-sky/csky-linux
[mirror_ubuntu-focal-kernel.git] / mm / kasan / generic.c
index 504c79363a34dd885eb462910e8e32971696bd18..616f9dd82d120763a876760d9fee6111767771f0 100644 (file)
@@ -166,29 +166,30 @@ static __always_inline bool memory_is_poisoned(unsigned long addr, size_t size)
        return memory_is_poisoned_n(addr, size);
 }
 
-static __always_inline void check_memory_region_inline(unsigned long addr,
+static __always_inline bool check_memory_region_inline(unsigned long addr,
                                                size_t size, bool write,
                                                unsigned long ret_ip)
 {
        if (unlikely(size == 0))
-               return;
+               return true;
 
        if (unlikely((void *)addr <
                kasan_shadow_to_mem((void *)KASAN_SHADOW_START))) {
                kasan_report(addr, size, write, ret_ip);
-               return;
+               return false;
        }
 
        if (likely(!memory_is_poisoned(addr, size)))
-               return;
+               return true;
 
        kasan_report(addr, size, write, ret_ip);
+       return false;
 }
 
-void check_memory_region(unsigned long addr, size_t size, bool write,
+bool check_memory_region(unsigned long addr, size_t size, bool write,
                                unsigned long ret_ip)
 {
-       check_memory_region_inline(addr, size, write, ret_ip);
+       return check_memory_region_inline(addr, size, write, ret_ip);
 }
 
 void kasan_cache_shrink(struct kmem_cache *cache)