[lkml]   [2010]   [Sep]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [PATCH 2/3] mm: page allocator: Calculate a better estimate of NR_FREE_PAGES when memory is low and kswapd is awake
    On Wed, Sep 01, 2010 at 07:43:41PM -0500, Christoph Lameter wrote:
    > On Tue, 31 Aug 2010, Mel Gorman wrote:
    > > +#ifdef CONFIG_SMP
    > > +/* Called when a more accurate view of NR_FREE_PAGES is needed */
    > > +unsigned long zone_nr_free_pages(struct zone *zone)
    > > +{
    > > + unsigned long nr_free_pages = zone_page_state(zone, NR_FREE_PAGES);
    > You cannot call zone_page_state here because zone_page_state clips the
    > counter at zero. The nr_free_pages needs to reflect the unclipped state
    > and then the deltas need to be added. Then the clipping at zero can be
    > done.

    Good point. This justifies the use of a generic helper that is co-located
    with vmstat.h. I've taken your zone_page_state_snapshot() patch, am using
    the helper to take a more accurate reading of NR_FREE_PAGES and preparing
    for a test. Thanks Christoph.

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

     \ /
      Last update: 2010-09-02 10:53    [W:0.018 / U:6.380 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site