Commit be95e13f authored by Andrey Konovalov's avatar Andrey Konovalov Committed by Andrew Morton
Browse files

kasan: only define metadata structs for Generic mode

Hide the definitions of kasan_alloc_meta and kasan_free_meta under an
ifdef CONFIG_KASAN_GENERIC check, as these structures are now only used
when the Generic mode is enabled.

Link: https://lkml.kernel.org/r/8d2aabff8c227c444a3f62edf87d5630beb77640.1662411799.git.andreyknvl@google.com


Signed-off-by: default avatarAndrey Konovalov <andreyknvl@google.com>
Reviewed-by: default avatarMarco Elver <elver@google.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Peter Collingbourne <pcc@google.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 26f21f3a
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -193,14 +193,12 @@ struct kasan_track {
	depot_stack_handle_t stack;
};

#ifdef CONFIG_KASAN_GENERIC

struct kasan_alloc_meta {
	struct kasan_track alloc_track;
	/* Generic mode stores free track in kasan_free_meta. */
#ifdef CONFIG_KASAN_GENERIC
	/* Free track is stored in kasan_free_meta. */
	depot_stack_handle_t aux_stack[2];
#else
	struct kasan_track free_track;
#endif
};

struct qlist_node {
@@ -219,12 +217,12 @@ struct qlist_node {
 * After that, slab allocator stores the freelist pointer in the object.
 */
struct kasan_free_meta {
#ifdef CONFIG_KASAN_GENERIC
	struct qlist_node quarantine_link;
	struct kasan_track free_track;
#endif
};

#endif /* CONFIG_KASAN_GENERIC */

#if IS_ENABLED(CONFIG_KASAN_KUNIT_TEST)
/* Used in KUnit-compatible KASAN tests. */
struct kunit_kasan_status {