Re: [PATCH] Mark the correct zone as full when scanning zonelists

From: Mel Gorman
Date: Mon Sep 15 2008 - 19:21:22 EST


On (11/09/08 14:41), Andrew Morton didst pronounce:
> On Thu, 11 Sep 2008 22:25:51 +0100
> Mel Gorman <mel@xxxxxxxxx> wrote:
>
> > The for_each_zone_zonelist() uses a struct zoneref *z cursor when scanning
> > zonelists to keep track of where in the zonelist it is. The zoneref that
> > is returned corresponds to the the next zone that is to be scanned, not
> > the current one as it originally thought of as an opaque list.
> >
> > When the page allocator is scanning a zonelist, it marks zones that it
> > temporarily full zones to eliminate near-future scanning attempts.
>
> That sentence needs help.
>
> > It uses
> > the zoneref for the marking and consequently the incorrect zone gets marked
> > full. This leads to a suitable zone being skipped in the mistaken belief
> > it is full. This patch corrects the problem by changing zoneref to be the
> > current zone being scanned instead of the next one.
>
> Applicable to 2.6.26 as well, yes?
>
>
> Someone reported a bug a few weeks ago which I think this patch will fix,
> yes? I don't remember who that was, nor do I recall the precise details
> of what the userspace-visible (mis)behaviour was.
>
> Are you able to fill in the gaps here?

I searched through the archives and couldn't find a bug report that this
patch may be the fix to. However, I understand that the initial leader
could have been a lot better.

> Put yourself in the position of
> a poor little -stable maintainer scratching his head wondering ytf he
> was sent this patch.
>
> Thanks.
>

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