__kmalloc and it's variants are invoked much frequently and these are performance critical functions, so their callee functions are declared '__always_inline' But, currently, get_slab() isn't declared '__always_inline'. In result, __kmalloc and it's variants call get_slab() on x86. It is not desirable result, so change it to inline at all times. Signed-off-by: Joonsoo Kim <js1304@xxxxxxxxx> diff --git a/mm/slub.c b/mm/slub.c index 71de9b5..30ceb6d 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -3320,7 +3320,7 @@ static inline int size_index_elem(size_t bytes) return (bytes - 1) / 8; } -static struct kmem_cache *get_slab(size_t size, gfp_t flags) +static __always_inline struct kmem_cache *get_slab(size_t size, gfp_t flags) { int index; -- 1.7.9.5 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>