arm64: dts: marvell: mcbin: enable uart headers
[linux-2.6-block.git] / mm / slub.c
index cc71176c6eeff4e3d5dbd04668c4485b582a6b34..e381728a3751f0a9b09b4a8a3a15d2ab5ee90c00 100644 (file)
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -1356,13 +1356,13 @@ static inline void kmalloc_large_node_hook(void *ptr, size_t size, gfp_t flags)
        kasan_kmalloc_large(ptr, size, flags);
 }
 
-static inline void kfree_hook(const void *x)
+static __always_inline void kfree_hook(void *x)
 {
        kmemleak_free(x);
-       kasan_kfree_large(x);
+       kasan_kfree_large(x, _RET_IP_);
 }
 
-static inline void *slab_free_hook(struct kmem_cache *s, void *x)
+static __always_inline void *slab_free_hook(struct kmem_cache *s, void *x)
 {
        void *freeptr;
 
@@ -1390,7 +1390,7 @@ static inline void *slab_free_hook(struct kmem_cache *s, void *x)
         * kasan_slab_free() may put x into memory quarantine, delaying its
         * reuse. In this case the object's freelist pointer is changed.
         */
-       kasan_slab_free(s, x);
+       kasan_slab_free(s, x, _RET_IP_);
        return freeptr;
 }
 
@@ -3910,7 +3910,7 @@ void kfree(const void *x)
        page = virt_to_head_page(x);
        if (unlikely(!PageSlab(page))) {
                BUG_ON(!PageCompound(page));
-               kfree_hook(x);
+               kfree_hook(object);
                __free_pages(page, compound_order(page));
                return;
        }