diff --git a/mm/slub.c b/mm/slub.c index 5b64953ae7b3..3b1a50ae8273 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -278,6 +278,7 @@ static inline void *get_freepointer_safe(struct kmem_cache *s, void *object) if (!debug_pagealloc_enabled_static()) return get_freepointer(s, object); + object = kasan_reset_tag(object); freepointer_addr = (unsigned long)object + s->offset; copy_from_kernel_nofault(&p, (void **)freepointer_addr, sizeof(p)); return freelist_ptr(s, p, freepointer_addr);