kasan-introduce-kasan_get_alloc_track.patch removed from -mm tree
The quilt patch titled
Subject: kasan: introduce kasan_get_alloc_track
has been removed from the -mm tree. Its filename was
kasan-introduce-kasan_get_alloc_track.patch
This patch was dropped because it was merged into the mm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
------------------------------------------------------
From: Andrey Konovalov <[email protected]>
Subject: kasan: introduce kasan_get_alloc_track
Date: Mon, 5 Sep 2022 23:05:22 +0200
Add a kasan_get_alloc_track() helper that fetches alloc_track for a slab object and use this helper in the common reporting code.
For now, the implementations of this helper are the same for the Generic and tag-based modes, but they will diverge later in the series.
This change hides references to alloc_meta from the common reporting code. This is desired as only the Generic mode will be using per-object metadata after this series.
---
mm/kasan/generic.c | 14 +++++++++++++- mm/kasan/kasan.h | 4 +++- mm/kasan/report.c | 8 ++++---- mm/kasan/tags.c | 14 +++++++++++++- 4 files changed, 33 insertions(+), 7 deletions(-)
mm/kasan/generic.c renamed from mm/kasan/generic.c~kasan-introduce-kasan_get_alloc_track +13 -1
@@ -381,8 +381,20 @@ void kasan_save_free_info(struct kmem_ca *(u8 *)kasan_mem_to_shadow (object) =KASAN_SLAB_FREETRACK ; } +struct kasan_track *kasan_get_alloc_track (struct kmem_cache *cache, +void *object) +{ +struct kasan_alloc_meta *alloc_meta; + + alloc_meta =kasan_get_alloc_meta (cache, object); +if (!alloc_meta) +return NULL ; + +return &alloc_meta->alloc_track; +} +struct kasan_track *kasan_get_free_track (struct kmem_cache *cache, -void *object,u8 tag) +void *object,u8 tag) {if (*(u8 *)kasan_mem_to_shadow (object) !=KASAN_SLAB_FREETRACK )return NULL ;
mm/kasan/kasan.h renamed from mm/kasan/kasan.h~kasan-introduce-kasan_get_alloc_track +3 -1
@@ -283,8 +283,10 @@ depot_stack_handle_t kasan_save_stack(gfvoid kasan_set_track (struct kasan_track *track,gfp_t flags);void kasan_save_alloc_info (struct kmem_cache *cache,void *object,gfp_t flags);void kasan_save_free_info (struct kmem_cache *cache,void *object,u8 tag); +struct kasan_track *kasan_get_alloc_track (struct kmem_cache *cache, +void *object);struct kasan_track *kasan_get_free_track (struct kmem_cache *cache, -void *object,u8 tag); +void *object,u8 tag);#if defined(CONFIG_KASAN_GENERIC ) && \ (defined(CONFIG_SLAB ) || defined(CONFIG_SLUB ))
mm/kasan/report.c renamed from mm/kasan/report.c~kasan-introduce-kasan_get_alloc_track +4 -4
@@ -255,12 +255,12 @@ static void describe_object_addr(structstatic void describe_object_stacks (struct kmem_cache *cache,void *object,const void *addr,u8 tag) { -struct kasan_alloc_meta *alloc_meta; +struct kasan_track *alloc_track;struct kasan_track *free_track; - alloc_meta =kasan_get_alloc_meta (cache, object); -if (alloc_meta) { -print_track (&alloc_meta->alloc_track,"Allocated" ); + alloc_track =kasan_get_alloc_track (cache, object); +if (alloc_track) { +print_track (alloc_track,"Allocated" );pr_err ("\n" ); }
mm/kasan/tags.c renamed from mm/kasan/tags.c~kasan-introduce-kasan_get_alloc_track +13 -1
@@ -38,8 +38,20 @@ void kasan_save_free_info(struct kmem_cakasan_set_track (&alloc_meta->free_track,GFP_NOWAIT ); } +struct kasan_track *kasan_get_alloc_track (struct kmem_cache *cache, +void *object) +{ +struct kasan_alloc_meta *alloc_meta; + + alloc_meta =kasan_get_alloc_meta (cache, object); +if (!alloc_meta) +return NULL ; + +return &alloc_meta->alloc_track; +} +struct kasan_track *kasan_get_free_track (struct kmem_cache *cache, -void *object,u8 tag) +void *object,u8 tag) {struct kasan_alloc_meta *alloc_meta;
_
Patches currently in -mm which might be from [email protected] are
kasan-fix-array-bounds-warnings-in-tests.patch