From mboxrd@z Thu Jan 1 00:00:00 1970 Subject: Re: [PATCH] Prevent OOM from killing init References: From: James Antill Content-Type: text/plain; charset=US-ASCII Date: 26 Mar 2001 14:04:04 -0500 In-Reply-To: Rik van Riel's message of "Thu, 22 Mar 2001 20:37:11 -0300 (BRST)" Message-ID: MIME-Version: 1.0 Sender: owner-linux-mm@kvack.org Return-Path: To: Rik van Riel Cc: Guest section DW , Alan Cox , Stephen Clouse , Patrick O'Rourke , linux-mm@kvack.org, linux-kernel@vger.kernel.org List-ID: > On Fri, 23 Mar 2001, Guest section DW wrote: > > On Thu, Mar 22, 2001 at 10:52:09PM +0000, Alan Cox wrote: > > > > > You can do overcommit avoidance in Linux if you are bored enough to try it. > > > > Would you accept it as the default? Would Linus? > > It wouldn't help. Suppose you run without overcommit and you > fill up RAM and swap to the last page. > > Then you change the size of one of the windows on your desktop > and a program gets sent -SIGWINCH. Ignoring the fact that most people don't use a tty based desktop, and that I'm pretty happy having my desktop die in flames when OOM (my DNS or smtp server on the other hand...). > In order to process this > signal, the program needs to allocate some variables on its > stack, possibly needing a new page to be allocated for its > stack ... man sigaltstack > ... and since this is something which could happen to any program > on the system, the result of non-overcommit would be getting a > random process killed (though not completely random, syslogd and > klogd would get killed more often than the others). I fail to see why, stack usage can be limited (and possibly cleanly handled by having a prctl() to say make sure X pages are available on the stack). If you want overcommit great, and I think it's a valid default ... but it'd be nice if I could say I don't want it for apps that aren't written using glib etc. -- # James Antill -- james@and.org :0: * ^From: .*james@and\.org /dev/null -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux.eu.org/Linux-MM/