lkml.org 
[lkml]   [2004]   [Feb]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: 2.6.3-mm3
    Nick Piggin wrote:
    > IMO, shrink_slab-for-all-zones.patch and zone-balancing-fix.patch
    > should be all you need although they won't shrink the slab as
    > much as mm3. They should be pretty easy to port by hand.

    How does this patch for 2.6.3 look?

    --- linux-2.6.3/mm/vmscan.c 2004-02-25 20:50:35.000000000 -0800
    +++ linux-2.6.3-slab-lofft/mm/vmscan.c 2004-02-25 20:41:45.000000000 -0800
    @@ -885,12 +885,10 @@

    /* Take a nap, wait for some writeback to complete */
    blk_congestion_wait(WRITE, HZ/10);
    - if (zones[0] - zones[0]->zone_pgdat->node_zones < ZONE_HIGHMEM) {
    - shrink_slab(total_scanned, gfp_mask);
    - if (reclaim_state) {
    - nr_reclaimed += reclaim_state->reclaimed_slab;
    - reclaim_state->reclaimed_slab = 0;
    - }
    + shrink_slab(total_scanned, gfp_mask);
    + if (reclaim_state) {
    + nr_reclaimed += reclaim_state->reclaimed_slab;
    + reclaim_state->reclaimed_slab = 0;
    }
    }
    if ((gfp_mask & __GFP_FS) && !(gfp_mask & __GFP_NORETRY))
    @@ -962,11 +960,9 @@
    max_scan = SWAP_CLUSTER_MAX;
    to_free -= shrink_zone(zone, max_scan, GFP_KERNEL,
    to_reclaim, &nr_mapped, ps, priority);
    - if (i < ZONE_HIGHMEM) {
    - reclaim_state->reclaimed_slab = 0;
    - shrink_slab(max_scan + nr_mapped, GFP_KERNEL);
    - to_free -= reclaim_state->reclaimed_slab;
    - }
    + reclaim_state->reclaimed_slab = 0;
    + shrink_slab(nr_scanned, GFP_KERNEL);
    + reclaimed += reclaim_state->reclaimed_slab;
    if (zone->all_unreclaimable)
    continue;
    if (zone->pages_scanned > zone->present_pages * 2)
    \
     
     \ /
      Last update: 2005-03-22 14:01    [W:0.020 / U:60.160 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site