Re: tmpfs and the OOM killer

From: Willy Tarreau
Date: Wed Apr 11 2007 - 15:48:45 EST


On Wed, Apr 11, 2007 at 02:23:31AM -0300, Pedro wrote:
> After suffering some days from a not|mis configured tmpfs,
>
> As the OOM killer is not Posix,
>
> Better than to kill processes would be to resize tmpfs, to use tmpfs empty
> space.

Will not work, because tmpfs does not use any memory for unused space. If
you don't believe me, simply create a large file on your tmpfs, then check
free memory, then remove the file and check free memory again.

So your problem is not caused by the empty space on tmpfs, but either by
too much space used on tmpfs or by your application using too much memory.

> I'm using kernel 2.6.20.4. If someone ask I'll send a test application.

Not needed, the one-liner "main(){while(malloc(4096));}" is enough to
trigger an OOM.

If you cannot control your application's memory usage, you'll have to finely
tune the overcommit_ratio.

Regards,
Willy

-
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/