]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - mm/kasan/kasan.c
Merge branch 'akpm-current/current'
[karo-tx-linux.git] / mm / kasan / kasan.c
index 936d81661c478a89fd797e8b311b4c52291f2414..6c513a63ea84c3c7ffd41201b7a419ff7b6dfd5d 100644 (file)
@@ -389,6 +389,19 @@ void kasan_krealloc(const void *object, size_t size)
                kasan_kmalloc(page->slab_cache, object, size);
 }
 
+void kasan_kfree(void *ptr)
+{
+       struct page *page;
+
+       page = virt_to_head_page(ptr);
+
+       if (unlikely(!PageSlab(page)))
+               kasan_poison_shadow(ptr, PAGE_SIZE << compound_order(page),
+                               KASAN_FREE_PAGE);
+       else
+               kasan_slab_free(page->slab_cache, ptr);
+}
+
 void kasan_kfree_large(const void *ptr)
 {
        struct page *page = virt_to_page(ptr);