Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mm, slab: move prepare_slab_obj_exts_hook under CONFIG_MEM_ALLOC_PROFILING

The only place prepare_slab_obj_exts_hook() is currently being used is
from alloc_tagging_slab_alloc_hook() when CONFIG_MEM_ALLOC_PROFILING=y.
Move its definition under CONFIG_MEM_ALLOC_PROFILING to prevent unused
function warning for CONFIG_SLAB_OBJ_EXT=n case.

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202407050845.zNONqauD-lkp@intel.com/
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Reviewed-by: Xiongwei Song <xiongwei.song@linux.dev>
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>

authored by

Suren Baghdasaryan and committed by
Vlastimil Babka
7b1fdf2b 302a3ea3

+21 -27
+21 -27
mm/slub.c
··· 2009 2009 return false; 2010 2010 } 2011 2011 2012 + #else /* CONFIG_SLAB_OBJ_EXT */ 2013 + 2014 + static int alloc_slab_obj_exts(struct slab *slab, struct kmem_cache *s, 2015 + gfp_t gfp, bool new_slab) 2016 + { 2017 + return 0; 2018 + } 2019 + 2020 + static inline void free_slab_obj_exts(struct slab *slab) 2021 + { 2022 + } 2023 + 2024 + static inline bool need_slab_obj_ext(void) 2025 + { 2026 + return false; 2027 + } 2028 + 2029 + #endif /* CONFIG_SLAB_OBJ_EXT */ 2030 + 2031 + #ifdef CONFIG_MEM_ALLOC_PROFILING 2032 + 2012 2033 static inline struct slabobj_ext * 2013 2034 prepare_slab_obj_exts_hook(struct kmem_cache *s, gfp_t flags, void *p) 2014 2035 { ··· 2053 2032 2054 2033 return slab_obj_exts(slab) + obj_to_index(s, slab, p); 2055 2034 } 2056 - 2057 - #else /* CONFIG_SLAB_OBJ_EXT */ 2058 - 2059 - static int alloc_slab_obj_exts(struct slab *slab, struct kmem_cache *s, 2060 - gfp_t gfp, bool new_slab) 2061 - { 2062 - return 0; 2063 - } 2064 - 2065 - static inline void free_slab_obj_exts(struct slab *slab) 2066 - { 2067 - } 2068 - 2069 - static inline bool need_slab_obj_ext(void) 2070 - { 2071 - return false; 2072 - } 2073 - 2074 - static inline struct slabobj_ext * 2075 - prepare_slab_obj_exts_hook(struct kmem_cache *s, gfp_t flags, void *p) 2076 - { 2077 - return NULL; 2078 - } 2079 - 2080 - #endif /* CONFIG_SLAB_OBJ_EXT */ 2081 - 2082 - #ifdef CONFIG_MEM_ALLOC_PROFILING 2083 2035 2084 2036 static inline void 2085 2037 alloc_tagging_slab_alloc_hook(struct kmem_cache *s, void *object, gfp_t flags)