mm/slub: remove the check for NULL kmalloc_caches
authorHyunmin Lee <hyunminlr@gmail.com>
Wed, 24 Apr 2024 14:04:22 +0000 (23:04 +0900)
committerVlastimil Babka <vbabka@suse.cz>
Thu, 2 May 2024 14:09:40 +0000 (16:09 +0200)
If the same size kmalloc cache already exists, it should not be created
again. So there is the check for NULL kmalloc_caches before calling the
kmalloc creation function. However, new_kmalloc_cache() itself checks NULL
kmalloc_cahces before cache creation. Therefore, the NULL check is not
necessary in this function.

Signed-off-by: Hyunmin Lee <hyunminlr@gmail.com>
Co-developed-by: Jeungwoo Yoo <casionwoo@gmail.com>
Signed-off-by: Jeungwoo Yoo <casionwoo@gmail.com>
Co-developed-by: Sangyun Kim <sangyun.kim@snu.ac.kr>
Signed-off-by: Sangyun Kim <sangyun.kim@snu.ac.kr>
Cc: Hyeonggon Yoo <42.hyeyoo@gmail.com>
Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Reviewed-by: Christoph Lameter <cl@linux.com>
Acked-by: David Rientjes <rientjes@google.com>
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
mm/slab_common.c

index 7cfdcc8cbf5f8c3e97dee3bd3199c5a6e5e9be1f..c37f8c41ffb00beb5f51d5ba598fb8d9be4bc735 100644 (file)
@@ -917,16 +917,14 @@ void __init create_kmalloc_caches(void)
         */
        for (type = KMALLOC_NORMAL; type < NR_KMALLOC_TYPES; type++) {
                /* Caches that are NOT of the two-to-the-power-of size. */
-               if (KMALLOC_MIN_SIZE <= 32 && !kmalloc_caches[type][1])
+               if (KMALLOC_MIN_SIZE <= 32)
                        new_kmalloc_cache(1, type);
-               if (KMALLOC_MIN_SIZE <= 64 && !kmalloc_caches[type][2])
+               if (KMALLOC_MIN_SIZE <= 64)
                        new_kmalloc_cache(2, type);
 
                /* Caches that are of the two-to-the-power-of size. */
-               for (i = KMALLOC_SHIFT_LOW; i <= KMALLOC_SHIFT_HIGH; i++) {
-                       if (!kmalloc_caches[type][i])
-                               new_kmalloc_cache(i, type);
-               }
+               for (i = KMALLOC_SHIFT_LOW; i <= KMALLOC_SHIFT_HIGH; i++)
+                       new_kmalloc_cache(i, type);
        }
 #ifdef CONFIG_RANDOM_KMALLOC_CACHES
        random_kmalloc_seed = get_random_u64();