summaryrefslogtreecommitdiff
path: root/mm/kasan/common.c
diff options
context:
space:
mode:
authorAndrew Morton <akpm@linux-foundation.org>2024-02-23 17:28:43 -0800
committerAndrew Morton <akpm@linux-foundation.org>2024-02-23 17:28:43 -0800
commit1f1183c4c0bc609c98b71ab9281ff72533d89bb0 (patch)
tree91b11f96af03037a7920a97b828c5ef8d7768ae5 /mm/kasan/common.c
parent7d8cebb9630af71f04cb27314a4effbc0f4f8648 (diff)
parent720da1e593b85a550593b415bf1d79a053133451 (diff)
merge mm-hotfixes-stable into mm-nonmm-stable to pick up stackdepot changes
Diffstat (limited to 'mm/kasan/common.c')
-rw-r--r--mm/kasan/common.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/mm/kasan/common.c b/mm/kasan/common.c
index f2747ed30da0..e7c9a4dc89f8 100644
--- a/mm/kasan/common.c
+++ b/mm/kasan/common.c
@@ -65,8 +65,7 @@ void kasan_save_track(struct kasan_track *track, gfp_t flags)
{
depot_stack_handle_t stack;
- stack = kasan_save_stack(flags,
- STACK_DEPOT_FLAG_CAN_ALLOC | STACK_DEPOT_FLAG_GET);
+ stack = kasan_save_stack(flags, STACK_DEPOT_FLAG_CAN_ALLOC);
kasan_set_track(track, stack);
}
@@ -266,10 +265,9 @@ bool __kasan_slab_free(struct kmem_cache *cache, void *object,
return true;
/*
- * If the object is not put into quarantine, it will likely be quickly
- * reallocated. Thus, release its metadata now.
+ * Note: Keep per-object metadata to allow KASAN print stack traces for
+ * use-after-free-before-realloc bugs.
*/
- kasan_release_object_meta(cache, object);
/* Let slab put the object onto the freelist. */
return false;