[PATCH] Documentation/sysctl/vm.txt: clarify vfs_cache_pressure description

From: Denys Vlasenko
Date: Thu May 22 2014 - 10:21:09 EST


Existing description is worded in a way which almost encourages
setting of vfs_cache_pressure above 100, possibly way above it.

Users are left in a dark what this numeric value is - an int?
a percentage? what the scale is?

As a result, we are getting reports about noticeable performance
degradation from users who have set vfs_cache_pressure
to ridiculously high values - because they thought there is
no downside to it.

>From the code inspection it's obvious that this value is treated as
a percentage. This patch changes text to reflect this fact,
and adds a cautionary paragraph advising against setting
vfs_cache_pressure sky high.

Signed-off-by: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
---
Documentation/sysctl/vm.txt | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt
index dd9d0e3..2449ec54 100644
--- a/Documentation/sysctl/vm.txt
+++ b/Documentation/sysctl/vm.txt
@@ -746,8 +746,8 @@ Changing this takes effect whenever an application requests memory.
vfs_cache_pressure
------------------

-Controls the tendency of the kernel to reclaim the memory which is used for
-caching of directory and inode objects.
+This percentage value controls the tendency of the kernel to reclaim
+the memory which is used for caching of directory and inode objects.

At the default value of vfs_cache_pressure=100 the kernel will attempt to
reclaim dentries and inodes at a "fair" rate with respect to pagecache and
@@ -757,6 +757,11 @@ never reclaim dentries and inodes due to memory pressure and this can easily
lead to out-of-memory conditions. Increasing vfs_cache_pressure beyond 100
causes the kernel to prefer to reclaim dentries and inodes.

+Increasing vfs_cache_pressure significantly beyond 100 may have negative
+performance impact. Reclaim code needs to take various locks to find freeable
+directory and inode objects. With vfs_cache_pressure=1000, it will look for
+ten times more freeable objects than there are.
+
==============================================================

zone_reclaim_mode:
--
1.8.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/