|
@@ -408,7 +408,8 @@ void register_shrinker_prepared(struct shrinker *shrinker)
|
|
down_write(&shrinker_rwsem);
|
|
down_write(&shrinker_rwsem);
|
|
list_add_tail(&shrinker->list, &shrinker_list);
|
|
list_add_tail(&shrinker->list, &shrinker_list);
|
|
#ifdef CONFIG_MEMCG_KMEM
|
|
#ifdef CONFIG_MEMCG_KMEM
|
|
- idr_replace(&shrinker_idr, shrinker, shrinker->id);
|
|
|
|
|
|
+ if (shrinker->flags & SHRINKER_MEMCG_AWARE)
|
|
|
|
+ idr_replace(&shrinker_idr, shrinker, shrinker->id);
|
|
#endif
|
|
#endif
|
|
up_write(&shrinker_rwsem);
|
|
up_write(&shrinker_rwsem);
|
|
}
|
|
}
|