lkml.org 
[lkml]   [2008]   [Sep]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Mark the correct zone as full when scanning zonelists
On (12/09/08 10:10), KAMEZAWA Hiroyuki didst pronounce:
> On Thu, 11 Sep 2008 14:41:55 -0700
> Andrew Morton <akpm@linux-foundation.org> wrote:
>
> > On Thu, 11 Sep 2008 22:25:51 +0100
> > Mel Gorman <mel@csn.ul.ie> 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.
> >
> Hmm, should we rename
>
> next_zone_zonelist() => get_appropriate_zone_from_list()
>
> or some better name ?
>

Maybe as a separate patch, but to be honest the name still makes sense
to me but I'm biased.

> > > 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?
> >
> Maybe yes. But it's better to show where this patch really fixes.
> Is this a fix for misunderstanding usage of zoneref in
> mm/page_alloc.c::get_page_from_freelist() ?
>
> == here ?==
> if (NUMA_BUILD)
> zlc_mark_zone_full(zonelist, z);
>

I spelled this out a bit better hopefully in the updated changelog.

Thanks

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab


\
 
 \ /
  Last update: 2008-09-12 22:41    [W:0.065 / U:0.380 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site