aboutsummaryrefslogtreecommitdiffstats
path: root/mm/slab.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/slab.c')
-rw-r--r--mm/slab.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/mm/slab.c b/mm/slab.c
index fee275b5b6b7..65b5dcb6f671 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -3015,7 +3015,7 @@ retry:
3015 for_each_zone_zonelist(zone, z, zonelist, high_zoneidx) { 3015 for_each_zone_zonelist(zone, z, zonelist, high_zoneidx) {
3016 nid = zone_to_nid(zone); 3016 nid = zone_to_nid(zone);
3017 3017
3018 if (cpuset_zone_allowed(zone, flags | __GFP_HARDWALL) && 3018 if (cpuset_zone_allowed(zone, flags) &&
3019 get_node(cache, nid) && 3019 get_node(cache, nid) &&
3020 get_node(cache, nid)->free_objects) { 3020 get_node(cache, nid)->free_objects) {
3021 obj = ____cache_alloc_node(cache, 3021 obj = ____cache_alloc_node(cache,
@@ -3182,6 +3182,7 @@ slab_alloc_node(struct kmem_cache *cachep, gfp_t flags, int nodeid,
3182 memset(ptr, 0, cachep->object_size); 3182 memset(ptr, 0, cachep->object_size);
3183 } 3183 }
3184 3184
3185 memcg_kmem_put_cache(cachep);
3185 return ptr; 3186 return ptr;
3186} 3187}
3187 3188
@@ -3247,6 +3248,7 @@ slab_alloc(struct kmem_cache *cachep, gfp_t flags, unsigned long caller)
3247 memset(objp, 0, cachep->object_size); 3248 memset(objp, 0, cachep->object_size);
3248 } 3249 }
3249 3250
3251 memcg_kmem_put_cache(cachep);
3250 return objp; 3252 return objp;
3251} 3253}
3252 3254