![[LWN Logo]](/images/lcorner.png) |
|
![[LWN.net]](/images/Included.png) |
From: Andrew Morton <akpm@zip.com.au>
To: lkml <linux-kernel@vger.kernel.org>
Subject: aa-170-drain_cpu_caches
Date: Tue, 19 Mar 2002 20:01:54 -0800
A performance tweak (I guess): perform the cross-CPU cache reclaim
operation outside the global semaphore. Needs more explanation.
=====================================
--- 2.4.19-pre3/mm/slab.c~aa-170-drain_cpu_caches Tue Mar 19 19:49:03 2002
+++ 2.4.19-pre3-akpm/mm/slab.c Tue Mar 19 19:49:03 2002
@@ -916,8 +916,6 @@ static int __kmem_cache_shrink(kmem_cach
slab_t *slabp;
int ret;
- drain_cpu_caches(cachep);
-
spin_lock_irq(&cachep->spinlock);
/* If the cache is growing, stop shrinking. */
@@ -987,6 +985,8 @@ int kmem_cache_destroy (kmem_cache_t * c
kmem_cache_t, next);
list_del(&cachep->next);
up(&cache_chain_sem);
+
+ drain_cpu_caches(cachep);
if (__kmem_cache_shrink(cachep)) {
printk(KERN_ERR "kmem_cache_destroy: Can't free all objects %p\n",
-
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/