Re: [PATCH 0/8] Create ZONE_MOVABLE to partition memory betweenmovable and non-movable pages

From: Andrew Morton
Date: Mon Jan 29 2007 - 17:37:40 EST


On Mon, 29 Jan 2007 13:54:38 -0800 (PST)
Christoph Lameter <clameter@xxxxxxx> wrote:

> On Fri, 26 Jan 2007, Andrew Morton wrote:
>
> > > The main benefit is a significant simplification of the VM, leading to
> > > robust and reliable operations and a reduction of the maintenance
> > > headaches coming with the additional zones.
> > >
> > > If we would introduce the ability of allocating from a range of
> > > physical addresses then the need for DMA zones would go away allowing
> > > flexibility for device driver DMA allocations and at the same time we get
> > > rid of special casing in the VM.
> >
> > None of this is valid. The great majority of machines out there will
> > continue to have the same number of zones. Nothing changes.
>
> All 64 bit machine will only have a single zone if we have such a range
> alloc mechanism. The 32bit ones with HIGHMEM wont be able to avoid it,
> true. But all arches that do not need gymnastics to access their memory
> will be able run with a single zone.

What is "such a range alloc mechanism"?

> > That's all a real cost, so we need to see *good* benefits to outweigh that
> > cost. Thus far I don't think we've seen that.
>
> The real savings is the simplicity of VM design, robustness and
> efficiency. We loose on all these fronts if we keep or add useless zones.
>
> The main reason for the recent problems with dirty handling seem to be due
> to exactly such a multizone balancing issues involving ZONE_NORMAL and
> HIGHMEM. Those problems cannot occur on single ZONE arches (this means
> right now on a series of embedded arches, UML and IA64).
>
> Multiple ZONES are a recipie for VM fragility and result in complexity
> that is difficult to manage.

Why do I have to keep repeating myself? 90% of known FC6-running machines
are x86-32. 90% of vendor-shipped kernels need all three zones. And the
remaining 10% ship with multiple nodes as well.

So please stop telling me what a wonderful world it is to not have multiple
zones. It just isn't going to happen for a long long time. The
multiple-zone kernel is the case we need to care about most by a very large
margin indeed. Single-zone is an infinitesimal corner-case.



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