Re: [PATCH] mm: Fix memory hotplug oops from ZONE_MOVABLE changes.

From: Mel Gorman
Date: Fri Jul 20 2007 - 10:01:21 EST


On (20/07/07 22:39), KAMEZAWA Hiroyuki didst pronounce:
> On Fri, 20 Jul 2007 20:42:46 +0900
> Paul Mundt <lethal@xxxxxxxxxxxx> wrote:
>
> > > I expect that the memory gets added to the same zone as historically but
> > > when ZONE_MOVABLE is set, you'll see a situation where zones are overlapping
> > > after memory hot-add. i.e. Before memory hot-add, you'd see
> > >
> > > DDDDMM
> > >
> > > for ZONE_DMA and ZONE_MOVABLE and after hotadd, you'd see something like
> > >
> > > DDDDMMDDDD
> > >
>
> As similar case, I hear powerpc has followig memory layout
>
> (1)(1)(0)(0)(0)(1)(1)(1) # (0) is node 0, (1) is node 1. all zones are ZONE_DMA.
>

Not always, but it happens. We used to have two test machines available
that exhibited this behaviour although they went missing at some point
which is unfortunate.

> So zone is overlapped without memory hotplug.

Zones overlapping have some subtle differences to nodes but the place this is
really noticeable is during memory init when a range of PFNs are initialised
by memmap_init_zone(). If zones overlap there, they can initialise the
struct page fields twice but that is not an issue with memory hot-add. The
potential issue I am thinking of is users that manually walk the memmap but
no functionality outside of debugging should be doing anything like that.

> But I agree we have to take care of this kind of corner cases.
>

Indeed. I think we're ok, but it should be checked out anyway.

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab
-
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/