kasan-move-kasan_get__meta-to-genericc.patch removed from -mm tree
The quilt patch titled
Subject: kasan: move kasan_get_*_meta to generic.c
has been removed from the -mm tree. Its filename was
kasan-move-kasan_get__meta-to-genericc.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: move kasan_get_*_meta to generic.c
Date: Mon, 5 Sep 2022 23:05:25 +0200
Move the implementations of kasan_get_alloc/free_meta() to generic.c, as the common KASAN code does not use these functions anymore.
Also drop kasan_reset_tag() from the implementation, as the Generic mode does not tag pointers.
---
mm/kasan/common.c | 19 ------------------- mm/kasan/generic.c | 17 +++++++++++++++++ mm/kasan/kasan.h | 14 +++++++------- 3 files changed, 24 insertions(+), 26 deletions(-)
mm/kasan/common.c renamed from mm/kasan/common.c~kasan-move-kasan_get__meta-to-genericc +0 -19
@@ -229,25 +229,6 @@ size_t __kasan_metadata_size(struct kmem sizeof(struct kasan_free_meta) : 0); } -struct kasan_alloc_meta *kasan_get_alloc_meta (struct kmem_cache *cache, -const void *object) -{ -if (!cache->kasan_info.alloc_meta_offset) -return NULL ; -return kasan_reset_tag (object) + cache->kasan_info.alloc_meta_offset; -} - -#ifdef CONFIG_KASAN_GENERIC -struct kasan_free_meta *kasan_get_free_meta (struct kmem_cache *cache, -const void *object) -{ -BUILD_BUG_ON (sizeof (struct kasan_free_meta ) >32 ); -if (cache->kasan_info.free_meta_offset ==KASAN_NO_FREE_META ) -return NULL ; -return kasan_reset_tag (object) + cache->kasan_info.free_meta_offset; -} -#endif -void __kasan_poison_slab (struct slab *slab) {struct page *page =slab_page (slab);
mm/kasan/generic.c renamed from mm/kasan/generic.c~kasan-move-kasan_get__meta-to-genericc +17 -0
@@ -328,6 +328,23 @@ DEFINE_ASAN_SET_SHADOW(f3);DEFINE_ASAN_SET_SHADOW (f5);DEFINE_ASAN_SET_SHADOW (f8); +struct kasan_alloc_meta *kasan_get_alloc_meta (struct kmem_cache *cache, +const void *object) +{ +if (!cache->kasan_info.alloc_meta_offset) +return NULL ; +return (void *)object + cache->kasan_info.alloc_meta_offset; +} + +struct kasan_free_meta *kasan_get_free_meta (struct kmem_cache *cache, +const void *object) +{ +BUILD_BUG_ON (sizeof (struct kasan_free_meta ) >32 ); +if (cache->kasan_info.free_meta_offset ==KASAN_NO_FREE_META ) +return NULL ; +return (void *)object + cache->kasan_info.free_meta_offset; +} +void kasan_init_object_meta (struct kmem_cache *cache,const void *object) {struct kasan_alloc_meta *alloc_meta;
mm/kasan/kasan.h renamed from mm/kasan/kasan.h~kasan-move-kasan_get__meta-to-genericc +7 -7
@@ -209,13 +209,6 @@ struct kunit_kasan_status { };#endif -struct kasan_alloc_meta *kasan_get_alloc_meta (struct kmem_cache *cache, -const void *object); -#ifdef CONFIG_KASAN_GENERIC -struct kasan_free_meta *kasan_get_free_meta (struct kmem_cache *cache, -const void *object); -#endif -#if defined(CONFIG_KASAN_GENERIC ) || defined(CONFIG_KASAN_SW_TAGS )static inline const void *kasan_shadow_to_mem (const void *shadow_addr)
@@ -281,6 +274,13 @@ struct slab *kasan_addr_to_slab(const vovoid kasan_init_object_meta (struct kmem_cache *cache,const void *object); +#ifdef CONFIG_KASAN_GENERIC +struct kasan_alloc_meta *kasan_get_alloc_meta (struct kmem_cache *cache, +const void *object); +struct kasan_free_meta *kasan_get_free_meta (struct kmem_cache *cache, +const void *object); +#endif +depot_stack_handle_t kasan_save_stack (gfp_t flags,bool can_alloc);void kasan_set_track (struct kasan_track *track,gfp_t flags);void kasan_save_alloc_info (struct kmem_cache *cache,void *object,gfp_t flags);
_
Patches currently in -mm which might be from [email protected] are
kasan-fix-array-bounds-warnings-in-tests.patch