summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2014-08-07 16:14:41 -0700
committerBrian Behlendorf <[email protected]>2014-08-08 08:50:03 -0700
commitc1aef26944ca8bc18e9f46f464c2957890c707e9 (patch)
tree8c0f2ddb6c51dc10e53fe5c5d6efbec67900086f
parent2bf35fb7547f2b66a1905b5ee86b467ff2d3c4b6 (diff)
Set spl_kmem_cache_reclaim=0 to default
Reinstate the correct default behavior of returning the number of objects in the cache for reclaim. This behavior was disabled in recent releases to do occasional reports of spinning in shrink_slabs(). Those issues have been resolved and can no longer can be reproduced. See commit 376dc35. Signed-off-by: Brian Behlendorf <[email protected]> Signed-off-by: DHE <[email protected]> Issue #358 Closes #379
-rw-r--r--module/spl/spl-kmem.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/module/spl/spl-kmem.c b/module/spl/spl-kmem.c
index 6389dc5aa..0d1da4378 100644
--- a/module/spl/spl-kmem.c
+++ b/module/spl/spl-kmem.c
@@ -58,12 +58,13 @@ module_param(spl_kmem_cache_expire, uint, 0644);
MODULE_PARM_DESC(spl_kmem_cache_expire, "By age (0x1) or low memory (0x2)");
/*
- * KMC_RECLAIM_ONCE is set as the default until zfsonlinux/spl#268 is
- * definitively resolved. Depending on the system configuration and
- * workload this may increase the likelihood of out of memory events.
- * For those cases it is advised that this option be set to zero.
+ * The default behavior is to report the number of objects remaining in the
+ * cache. This allows the Linux VM to repeatedly reclaim objects from the
+ * cache when memory is low satisfy other memory allocations. Alternately,
+ * setting this value to KMC_RECLAIM_ONCE limits how aggressively the cache
+ * is reclaimed. This may increase the likelihood of out of memory events.
*/
-unsigned int spl_kmem_cache_reclaim = KMC_RECLAIM_ONCE;
+unsigned int spl_kmem_cache_reclaim = 0;
module_param(spl_kmem_cache_reclaim, uint, 0644);
MODULE_PARM_DESC(spl_kmem_cache_reclaim, "Single reclaim pass (0x1)");