Out of memory for ... - suggestion

Albert Cahalan (albert@ccs.neu.edu)
Thu, 25 Jul 1996 18:47:55 -0400 (EDT)


From: Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl>

> as we know, running out of swap space causes the kernel to start
> killing random processes, and every time this happens, a message
> "Out of memory for <program name>" is logged. The problem is,
> this doesn't tell me much which program actually used up all the
> swap space (possibly because of a bug).
>
> Here is my suggestion: in addition to the "Out of memory for ..."
> message, there should be a process listing similar to "ps m" (or,
> if that would overflow the syslog buffer - syslogd could be very
> slow to read it due to heavy swapping - at least a few processes
> which are using the largest amount of memory). This way, it
> would be easier to track down the program (or luser :-) causing
> the trouble.
>
> (Of course it would still be nice if we can handle "out of VM"
> situations more gracefully than we do it now, but this has been
> discussed many times already...)

One important thing it that root processes should get priority.
They could be ranked in order of importance:

everything root
something root - uid, euid, whatever
nothing root

Within a rank, kill the biggest thing for now. (That would be Netscape.)
After per-user memory tracking is in place, go for a process run by
some piggy user.

I don't think this means enough to me, although xv with a 24-bit 1500x2000
image once killed my X server and left the console useless. Any ISPs out
there should be _real_ concerned - unless it is OK for users to bring
down the web server, sendmail, and other useless programs.