Skip to content

Commit 8dfa9d5

Browse files
hygonitehcaster
authored andcommitted
mm/slab_common: move declaration of __ksize() to mm/slab.h
__ksize() is only called by KASAN. Remove export symbol and move declaration to mm/slab.h as we don't want to grow its callers. Signed-off-by: Hyeonggon Yoo <42.hyeyoo@gmail.com> Reviewed-by: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
1 parent 2c1d697 commit 8dfa9d5

File tree

4 files changed

+3
-12
lines changed

4 files changed

+3
-12
lines changed

include/linux/slab.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,6 @@ int kmem_cache_shrink(struct kmem_cache *s);
187187
void * __must_check krealloc(const void *objp, size_t new_size, gfp_t flags) __alloc_size(2);
188188
void kfree(const void *objp);
189189
void kfree_sensitive(const void *objp);
190-
size_t __ksize(const void *objp);
191190
size_t ksize(const void *objp);
192191
#ifdef CONFIG_PRINTK
193192
bool kmem_valid_obj(void *object);

mm/slab.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -668,6 +668,8 @@ void free_large_kmalloc(struct folio *folio, void *object);
668668

669669
#endif /* CONFIG_SLOB */
670670

671+
size_t __ksize(const void *objp);
672+
671673
static inline size_t slab_ksize(const struct kmem_cache *s)
672674
{
673675
#ifndef CONFIG_SLUB

mm/slab_common.c

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -974,15 +974,7 @@ void kfree(const void *object)
974974
}
975975
EXPORT_SYMBOL(kfree);
976976

977-
/**
978-
* __ksize -- Uninstrumented ksize.
979-
* @object: pointer to the object
980-
*
981-
* Unlike ksize(), __ksize() is uninstrumented, and does not provide the same
982-
* safety checks as ksize() with KASAN instrumentation enabled.
983-
*
984-
* Return: size of the actual memory used by @object in bytes
985-
*/
977+
/* Uninstrumented ksize. Only called by KASAN. */
986978
size_t __ksize(const void *object)
987979
{
988980
struct folio *folio;
@@ -997,7 +989,6 @@ size_t __ksize(const void *object)
997989

998990
return slab_ksize(folio_slab(folio)->slab_cache);
999991
}
1000-
EXPORT_SYMBOL(__ksize);
1001992

1002993
#ifdef CONFIG_TRACING
1003994
void *kmalloc_trace(struct kmem_cache *s, gfp_t gfpflags, size_t size)

mm/slob.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -584,7 +584,6 @@ size_t __ksize(const void *block)
584584
m = (unsigned int *)(block - align);
585585
return SLOB_UNITS(*m) * SLOB_UNIT;
586586
}
587-
EXPORT_SYMBOL(__ksize);
588587

589588
int __kmem_cache_create(struct kmem_cache *c, slab_flags_t flags)
590589
{

0 commit comments

Comments
 (0)