aboutsummaryrefslogtreecommitdiffstats
path: root/mm/slab.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/slab.c')
-rw-r--r--mm/slab.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/mm/slab.c b/mm/slab.c
index 708efe886154..83311c9aaf9d 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -595,6 +595,7 @@ static enum {
595 PARTIAL_AC, 595 PARTIAL_AC,
596 PARTIAL_L3, 596 PARTIAL_L3,
597 EARLY, 597 EARLY,
598 LATE,
598 FULL 599 FULL
599} g_cpucache_up; 600} g_cpucache_up;
600 601
@@ -671,7 +672,7 @@ static void init_node_lock_keys(int q)
671{ 672{
672 struct cache_sizes *s = malloc_sizes; 673 struct cache_sizes *s = malloc_sizes;
673 674
674 if (g_cpucache_up != FULL) 675 if (g_cpucache_up < LATE)
675 return; 676 return;
676 677
677 for (s = malloc_sizes; s->cs_size != ULONG_MAX; s++) { 678 for (s = malloc_sizes; s->cs_size != ULONG_MAX; s++) {
@@ -1666,6 +1667,8 @@ void __init kmem_cache_init_late(void)
1666{ 1667{
1667 struct kmem_cache *cachep; 1668 struct kmem_cache *cachep;
1668 1669
1670 g_cpucache_up = LATE;
1671
1669 /* Annotate slab for lockdep -- annotate the malloc caches */ 1672 /* Annotate slab for lockdep -- annotate the malloc caches */
1670 init_lock_keys(); 1673 init_lock_keys();
1671 1674