Re: 2.6.20 OOM with 8Gb RAM

From: Andrew Morton
Date: Fri Apr 13 2007 - 18:47:14 EST


On Fri, 13 Apr 2007 18:39:36 -0400
Jason Lunz <lunz@xxxxxxxxxxxx> wrote:

> On Thu, Apr 12, 2007 at 12:15:53PM -0700, Andrew Morton wrote:
> > All of ZONE_NORMAL got used by ramdisk, and networking wants to
> > allocate a page from ZONE_NORMAL. An oom-killing is the correct
> > response, although probably not effective.
> >
> > ramdisk is a nasty thing - cannot you use ramfs or tmpfs?
>
> What do you mean by "nasty thing"?

It's just weird - it exploits internal knowledge of VFS behaviour, diddles
with pagecache within a fake disk strategy handler, etc.

Furthermore, because it pretends to be a block device, the VFS will not use
highmem pages when accessing the ramdisk. So the 8GB machine will go splat
with only 800MB of ramdisk.

ramfs is much cleaner and does not have that limitation.

> I've heard that about loopback too.

loopback does some pretty weird thigns too, but it has more of an excuse:
it is a specialised layering thing, whereas ramdisk is, umm, just a
ramdisk.

> If I want to run a system entirely from ram with a compressed filesystem
> image mounted on /, is it better to store that image in a ramdisk, or on
> a tmpfs and mount it via loopback?

Store it all in ramfs, no loopback needed?
-
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/