On Tue, 5 Nov 2013 17:38:52 -0500 Rik van Riel <[email protected]> wrote:
> Many load balancing and workload placing programs check /proc/meminfo > to estimate how much free memory is available. They generally do this > by adding up "free" and "cached", which was fine ten years ago, but > is pretty much guaranteed to be wrong today. > > It is wrong because Cached includes memory that is not freeable as > page cache, for example shared memory segments, tmpfs, and ramfs, > and it does not include reclaimable slab memory, which can take up > a large fraction of system memory on mostly idle systems with lots > of files. > > Currently, the amount of memory that is available for a new workload, > without pushing the system into swap, can be estimated from MemFree, > Active(file), Inactive(file), and SReclaimable, as well as the "low" > watermarks from /proc/zoneinfo. > > However, this may change in the future, and user space really should > not be expected to know kernel internals to come up with an estimate > for the amount of free memory. > > It is more convenient to provide such an estimate in /proc/meminfo, > if things change in the future, we only have to change it in one > place. > That's a good idea. > fs/proc/meminfo.c | 36 ++++++++++++++++++++++++++++++++++++ > 1 file changed, 36 insertions(+) Documentation/filesystems/proc.txt told me it's feeling all offended. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

