Re: min_free_kbytes documentation, /proc/sys/vm docs

From: Pavel Machek
Date: Mon Aug 13 2007 - 11:51:49 EST


Hi!

> > min_free_kbytes documentation says:
> >
> > min_free_kbytes:
> >
> > This is used to force the Linux VM to keep a minimum number
> > of kilobytes free. The VM uses this number to compute a pages_min
> > value for each lowmem zone in the system. Each lowmem zone gets
> > a number of reserved free pages based proportionally on its size.
> >
> > ....which is not too helpful :-(. In particular, should kernel survive
> > setting this to 0 and still work reliably? IOW is this
> > performance-only tweak, or does it correctness implications?
>
> correctness
>
> sort-of, since PF_MEMALLOC usage is currently un-bounded.

/me is scared. If this is for correctness... why is it different on
different machines? Should we specify some minimum value in the
documentation?

> > I guess it should also say something like "do not set this to more
> > than half of your physical RAM (or half of lowmem?) or you get an
> > instant OOM".
>
> yeah, lowmem, not sure on the oom part, it should work with quite high
> limits, although I've never tried it with ridiculous numbers.

I did, and it indeed OOMs instantly.

Perhaps something like this should be applied?

Signed-off-by: Pavel Machek <pavel@xxxxxxx>

diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt
index a0ccc5b..e460c19 100644
--- a/Documentation/sysctl/vm.txt
+++ b/Documentation/sysctl/vm.txt
@@ -111,6 +111,12 @@ of kilobytes free. The VM uses this num
value for each lowmem zone in the system. Each lowmem zone gets
a number of reserved free pages based proportionally on its size.

+Some minimal ammount of memory is needed to satisfy PF_MEMALLOC
+allocations; if you set this to lower than 1024KB, your system will
+become subtly broken, and prone to deadlock under high loads.
+
+Setting this too high will OOM your machine instantly.
+
==============================================================

percpu_pagelist_fraction

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
-
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/