lkml.org 
[lkml]   [2021]   [Dec]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH mm v5 15/39] kasan: clean up metadata byte definitions
    Date
    From: Andrey Konovalov <andreyknvl@google.com>

    Most of the metadata byte values are only used for Generic KASAN.

    Remove KASAN_KMALLOC_FREETRACK definition for !CONFIG_KASAN_GENERIC
    case, and put it along with other metadata values for the Generic
    mode under a corresponding ifdef.

    Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
    Reviewed-by: Alexander Potapenko <glider@google.com>
    ---
    mm/kasan/kasan.h | 7 +++++--
    1 file changed, 5 insertions(+), 2 deletions(-)

    diff --git a/mm/kasan/kasan.h b/mm/kasan/kasan.h
    index c17fa8d26ffe..952cd6f9ca46 100644
    --- a/mm/kasan/kasan.h
    +++ b/mm/kasan/kasan.h
    @@ -71,15 +71,16 @@ static inline bool kasan_sync_fault_possible(void)
    #define KASAN_PAGE_REDZONE 0xFE /* redzone for kmalloc_large allocations */
    #define KASAN_KMALLOC_REDZONE 0xFC /* redzone inside slub object */
    #define KASAN_KMALLOC_FREE 0xFB /* object was freed (kmem_cache_free/kfree) */
    -#define KASAN_KMALLOC_FREETRACK 0xFA /* object was freed and has free track set */
    #else
    #define KASAN_FREE_PAGE KASAN_TAG_INVALID
    #define KASAN_PAGE_REDZONE KASAN_TAG_INVALID
    #define KASAN_KMALLOC_REDZONE KASAN_TAG_INVALID
    #define KASAN_KMALLOC_FREE KASAN_TAG_INVALID
    -#define KASAN_KMALLOC_FREETRACK KASAN_TAG_INVALID
    #endif

    +#ifdef CONFIG_KASAN_GENERIC
    +
    +#define KASAN_KMALLOC_FREETRACK 0xFA /* object was freed and has free track set */
    #define KASAN_GLOBAL_REDZONE 0xF9 /* redzone for global variable */
    #define KASAN_VMALLOC_INVALID 0xF8 /* unallocated space in vmapped page */

    @@ -110,6 +111,8 @@ static inline bool kasan_sync_fault_possible(void)
    #define KASAN_ABI_VERSION 1
    #endif

    +#endif /* CONFIG_KASAN_GENERIC */
    +
    /* Metadata layout customization. */
    #define META_BYTES_PER_BLOCK 1
    #define META_BLOCKS_PER_ROW 16
    --
    2.25.1
    \
     
     \ /
      Last update: 2021-12-30 20:14    [W:2.588 / U:0.164 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site