[PATCH 0/5] mm, slab: Make kmalloc_info[] contain all types of names

From: Pengfei Li
Date: Tue Sep 03 2019 - 12:05:29 EST


There are three types of kmalloc, KMALLOC_NORMAL, KMALLOC_RECLAIM
and KMALLOC_DMA.

The name of KMALLOC_NORMAL is contained in kmalloc_info[].name,
but the names of KMALLOC_RECLAIM and KMALLOC_DMA are dynamically
generated by kmalloc_cache_name().

Patch1 predefines the names of all types of kmalloc to save
the time spent dynamically generating names.

The other 4 patches did some cleanup work.

These changes make sense, and the time spent by new_kmalloc_cache()
has been reduced by approximately 36.3%.

Time spent by
new_kmalloc_cache()
5.3-rc7 66264
5.3-rc7+patch 42188

Pengfei Li (5):
mm, slab: Make kmalloc_info[] contain all types of names
mm, slab_common: Remove unused kmalloc_cache_name()
mm, slab: Remove unused kmalloc_size()
mm, slab_common: Make 'type' is enum kmalloc_cache_type
mm, slab_common: Make initializing KMALLOC_DMA start from 1

include/linux/slab.h | 20 ---------
mm/slab.c | 7 +--
mm/slab.h | 2 +-
mm/slab_common.c | 101 +++++++++++++++++++++++--------------------
4 files changed, 59 insertions(+), 71 deletions(-)

--
2.21.0