Re: Swap vnode's [was overcommit thread]

From: Rik van Riel (riel@conectiva.com.br)
Date: Sun Apr 02 2000 - 17:02:23 EST


On Sat, 1 Apr 2000, Chipzz wrote:
> On Fri, 31 Mar 2000, Rik van Riel wrote:
> > On Thu, 30 Mar 2000, Larry McVoy wrote:
> >
> > > I've watched this go on (and on and on) and I don't remember
> > > anyone thinking of this easy solution: just use free disk space
> > > in any mounted file system as swap over flow. So if you run
> > > out, create /lost+found/swap-overflow, do a mkswap on it, and
> > > start allocating swap pages out of there. What's the problem
> > > with that?
> >
> > There are several userspace daemons that do exactly this.
> >
> > The problem is what we do when that fails. That's where
> > the OOM killer kicks in (and saves the system).
>
> What about: no more new processes can be started and a big
> warning in the logs that your system ran out of swap and you
> should increase swap space? I realize this is not a solution for
> remotely administrated systems, and it isn't either if the
> process that did the request keeps asking for more until that
> swap space runs out too, but it may be a start...

It's not a solution AT ALL. Firstly there is no way to
write something to the logfile if you can't allocate
memory.

Secondly you'll have a deadlocked box as soon as nothing
can do memory allocations any more, so the box is DEAD
as far as users are concerned. Not an option.

Thirdly your scheme will lead to klogd and syslogd dying
off because their requests for memory (to print your funny
kernel message) are denied.

regards,

Rik

--
The Internet is not a network of computers. It is a network
of people. That is its real strength.

Wanna talk about the kernel? irc.openprojects.net / #kernelnewbies http://www.conectiva.com/ http://www.surriel.com/

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



This archive was generated by hypermail 2b29 : Fri Apr 07 2000 - 21:00:09 EST