mm/slub: add slub_get_cpu_partial() helper
authorXiongwei Song <xiongwei.song@windriver.com>
Thu, 4 Apr 2024 05:58:25 +0000 (13:58 +0800)
committerVlastimil Babka <vbabka@suse.cz>
Thu, 4 Apr 2024 09:10:35 +0000 (11:10 +0200)
Add slub_get_cpu_partial() and dummy function to help improve
get_partial_node(). It can help remove #ifdef of CONFIG_SLUB_CPU_PARTIAL
and improve filling cpu partial logic.

Signed-off-by: Xiongwei Song <xiongwei.song@windriver.com>
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
mm/slub.c

index 2e0351066c5d817b9f7c3f122b4badf09f57f398..936f2b13a78e19467eb2ae49a7aeb54db04990ed 100644 (file)
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -604,11 +604,21 @@ static void slub_set_cpu_partial(struct kmem_cache *s, unsigned int nr_objects)
        nr_slabs = DIV_ROUND_UP(nr_objects * 2, oo_objects(s->oo));
        s->cpu_partial_slabs = nr_slabs;
 }
+
+static inline unsigned int slub_get_cpu_partial(struct kmem_cache *s)
+{
+       return s->cpu_partial_slabs;
+}
 #else
 static inline void
 slub_set_cpu_partial(struct kmem_cache *s, unsigned int nr_objects)
 {
 }
+
+static inline unsigned int slub_get_cpu_partial(struct kmem_cache *s)
+{
+       return 0;
+}
 #endif /* CONFIG_SLUB_CPU_PARTIAL */
 
 /*