Re: [PATCH v4] mm/vmscan: more restrictive condition for retry in do_try_to_free_pages
From: Johannes Weiner
Date: Fri Mar 17 2017 - 17:26:24 EST
On Fri, Mar 17, 2017 at 07:45:27PM +0100, Michal Hocko wrote:
> On Fri 17-03-17 14:39:28, Johannes Weiner wrote:
> > On Wed, Mar 15, 2017 at 07:36:48PM +0800, Yisheng Xie wrote:
> > > @@ -2808,7 +2813,7 @@ static unsigned long do_try_to_free_pages(struct zonelist *zonelist,
> > > return 1;
> > >
> > > /* Untapped cgroup reserves? Don't OOM, retry. */
> > > - if (!sc->may_thrash) {
> > > + if (sc->memcg_low_protection && !sc->may_thrash) {
> >
> > if (sc->memcg_low_skipped) {
> > [...]
> > sc->memcg_low_reclaim = 1;
>
> you need to set memcg_low_skipped = 0 here, right? Otherwise we do not
> have break out of the loop. Or am I missing something?
Oops, you're right of course. That needs to be reset.