Skip to content

Commit

Permalink
mm/sl[aou]b: Move common kmem_cache_size() to slab.h
Browse files Browse the repository at this point in the history
This function is identically defined in all three allocators
and it's trivial to move it to slab.h

Since now it's static, inline, header-defined function
this patch also drops the EXPORT_SYMBOL tag.

Cc: Pekka Enberg <[email protected]>
Cc: Matt Mackall <[email protected]>
Acked-by: Christoph Lameter <[email protected]>
Signed-off-by: Ezequiel Garcia <[email protected]>
Signed-off-by: Pekka Enberg <[email protected]>
  • Loading branch information
ezequielgarcia authored and penberg committed Oct 31, 2012
1 parent fe74fe2 commit 242860a
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 22 deletions.
9 changes: 8 additions & 1 deletion include/linux/slab.h
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,6 @@ struct kmem_cache *kmem_cache_create(const char *, size_t, size_t,
void kmem_cache_destroy(struct kmem_cache *);
int kmem_cache_shrink(struct kmem_cache *);
void kmem_cache_free(struct kmem_cache *, void *);
unsigned int kmem_cache_size(struct kmem_cache *);

/*
* Please use this macro to create slab caches. Simply specify the
Expand Down Expand Up @@ -388,6 +387,14 @@ static inline void *kzalloc_node(size_t size, gfp_t flags, int node)
return kmalloc_node(size, flags | __GFP_ZERO, node);
}

/*
* Determine the size of a slab object
*/
static inline unsigned int kmem_cache_size(struct kmem_cache *s)
{
return s->object_size;
}

void __init kmem_cache_init_late(void);

#endif /* _LINUX_SLAB_H */
6 changes: 0 additions & 6 deletions mm/slab.c
Original file line number Diff line number Diff line change
Expand Up @@ -3969,12 +3969,6 @@ void kfree(const void *objp)
}
EXPORT_SYMBOL(kfree);

unsigned int kmem_cache_size(struct kmem_cache *cachep)
{
return cachep->object_size;
}
EXPORT_SYMBOL(kmem_cache_size);

/*
* This initializes kmem_list3 or resizes various caches for all nodes.
*/
Expand Down
6 changes: 0 additions & 6 deletions mm/slob.c
Original file line number Diff line number Diff line change
Expand Up @@ -604,12 +604,6 @@ void kmem_cache_free(struct kmem_cache *c, void *b)
}
EXPORT_SYMBOL(kmem_cache_free);

unsigned int kmem_cache_size(struct kmem_cache *c)
{
return c->object_size;
}
EXPORT_SYMBOL(kmem_cache_size);

int __kmem_cache_shutdown(struct kmem_cache *c)
{
/* No way to check for remaining objects */
Expand Down
9 changes: 0 additions & 9 deletions mm/slub.c
Original file line number Diff line number Diff line change
Expand Up @@ -3121,15 +3121,6 @@ static int kmem_cache_open(struct kmem_cache *s, unsigned long flags)
return -EINVAL;
}

/*
* Determine the size of a slab object
*/
unsigned int kmem_cache_size(struct kmem_cache *s)
{
return s->object_size;
}
EXPORT_SYMBOL(kmem_cache_size);

static void list_slab_objects(struct kmem_cache *s, struct page *page,
const char *text)
{
Expand Down

0 comments on commit 242860a

Please sign in to comment.