[lkml]   [2004]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: lowmem_reserve (replaces protection)
    On Tue, Oct 26, 2004 at 08:43:08PM -0700, Andrew Morton wrote:
    > Nick Piggin <> wrote:
    > >
    > > It actually can overscan lower zones a little bit, because
    > > whenever any higher zone in the pgdat is low on memory, then
    > > it and all zones below it get scanned too.
    > Because we know that all of the eligible zones are below pages_low. kswapd
    > will then work to bring all the relevant zones back to pages_high.

    entering the loop is easy and shrinking all zones is easy.

    is how much to free from each zone in kswapd that won't work as 2.4 did
    with only pages_high.

    what we'll happen is that we'll blindly free a few pages from each zone,
    but then we'll be allowed to allocate the highmem pages, and not the
    normal/dma pages. So after allocating the highmem pages we invoke kswapd
    again and it frees again some highmem/normal/dma pages but we keep only
    using the highmem ones. So for a while we may be rolling over only the
    highmem lru and ignoring all freed pages from the normal/dma zones.

    2.4 would have freed all pages from the lower zones first (without
    this additional rolling over the highmem zone). Though it's a bit hard
    to compare since 2.4 had a global lru.

    The bigger the highmem zone, the less it will matter the stuff that can
    be cached in the low zones. And the smaller the highemm zone the less
    imbalancing will be generated since the reservation will be minuscle on
    the lower zones. So perhaps it already works fine, but this is not 2.4
    was working (I'm sure to make it work like 2.4 you'd need to add the
    lowmem_reserve in the when-to-stop-kswapd math). But maybe it works even
    better this way?
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 14:07    [W:0.021 / U:5.348 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site