aboutsummaryrefslogtreecommitdiffstats
path: root/mm/slab.c
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2016-03-16 08:11:09 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2016-03-16 11:18:25 +0100
commit31fa684096601d8fe5ea11e1c4d473229fef7c70 (patch)
tree5e355028e1afb00483177796d60252c25ce9823d /mm/slab.c
parent359d2243117a79599435141fda0047d01ef324e8 (diff)
parent86d65b7e7a0c927d07d18605c276d0f142438ead (diff)
downloadkernel_replicant_linux-31fa684096601d8fe5ea11e1c4d473229fef7c70.tar.gz
kernel_replicant_linux-31fa684096601d8fe5ea11e1c4d473229fef7c70.tar.bz2
kernel_replicant_linux-31fa684096601d8fe5ea11e1c4d473229fef7c70.zip
Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued
Backmerge because: - Maarten needs latest atomic patches from drm-misc. - Lionel needs the color manager core patch from drm-misc. - Ander extracted intel_dpll_mgr.c, we need a backmerge to avoid git losing track of things too often (right now it seems ok due to cherry-picks). - Tvrtko needs a stable baseline to apply some large-scale renaming patches to i915 GEM code. Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'mm/slab.c')
-rw-r--r--mm/slab.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/mm/slab.c b/mm/slab.c
index 6ecc697a8bc4..621fbcb35a36 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -2275,7 +2275,7 @@ __kmem_cache_create (struct kmem_cache *cachep, unsigned long flags)
err = setup_cpu_cache(cachep, gfp);
if (err) {
- __kmem_cache_shutdown(cachep);
+ __kmem_cache_release(cachep);
return err;
}
@@ -2414,12 +2414,13 @@ int __kmem_cache_shrink(struct kmem_cache *cachep, bool deactivate)
int __kmem_cache_shutdown(struct kmem_cache *cachep)
{
+ return __kmem_cache_shrink(cachep, false);
+}
+
+void __kmem_cache_release(struct kmem_cache *cachep)
+{
int i;
struct kmem_cache_node *n;
- int rc = __kmem_cache_shrink(cachep, false);
-
- if (rc)
- return rc;
free_percpu(cachep->cpu_cache);
@@ -2430,7 +2431,6 @@ int __kmem_cache_shutdown(struct kmem_cache *cachep)
kfree(n);
cachep->node[i] = NULL;
}
- return 0;
}
/*