lkml.org 
[lkml]   [2012]   [Feb]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: swap storm since kernel 3.2.x
    From
    On Thu, Feb 9, 2012 at 7:36 PM, Johannes Stezenbach <js@sig21.net> wrote:
    > On Wed, Feb 08, 2012 at 08:34:14PM +0800, Hillf Danton wrote:
    >> And I want to ask kswapd to do less work, the attached diff is
    >> based on 3.2.5, mind to test it with CONFIG_DEBUG_OBJECTS enabled?
    >
    > Sorry, for slow reply.  The patch does not apply to 3.2.4
    > (3.2.5 only has the ASPM change which I don't want to
    > try atm).  Is the patch below correct?
    >

    It is fine;)

    Thanks
    Hillf

    > I'll let this run for a while and will report back.
    >
    > Thanks
    > Johannes
    >
    >
    > --- mm/vmscan.c.orig    2012-02-03 21:39:51.000000000 +0100
    > +++ mm/vmscan.c 2012-02-09 12:30:42.000000000 +0100
    > @@ -2067,8 +2067,11 @@ restart:
    >                 * with multiple processes reclaiming pages, the total
    >                 * freeing target can get unreasonably large.
    >                 */
    > -               if (nr_reclaimed >= nr_to_reclaim && priority < DEF_PRIORITY)
    > +               if (nr_reclaimed >= nr_to_reclaim) {
    > +                       nr_to_reclaim = 0;
    >                        break;
    > +               }
    > +               nr_to_reclaim -= nr_reclaimed;
    >        }
    >        blk_finish_plug(&plug);
    >        sc->nr_reclaimed += nr_reclaimed;
    > @@ -2535,12 +2538,12 @@ static unsigned long balance_pgdat(pg_da
    >                 * we want to put equal scanning pressure on each zone.
    >                 */
    >                .nr_to_reclaim = ULONG_MAX,
    > -               .order = order,
    >                .mem_cgroup = NULL,
    >        };
    >        struct shrink_control shrink = {
    >                .gfp_mask = sc.gfp_mask,
    >        };
    > +       sc.order = order = 0;
    >  loop_again:
    >        total_scanned = 0;
    >        sc.nr_reclaimed = 0;
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-02-09 13:05    [W:3.572 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site