Re: [PATCH] vmpressure: Fix subtree pressure detection

From: Andrew Morton
Date: Tue Feb 02 2016 - 01:29:52 EST


On Fri, 29 Jan 2016 11:37:49 +0300 Vladimir Davydov <vdavydov@xxxxxxxxxxxxx> wrote:

> On Thu, Jan 28, 2016 at 08:24:30PM +0100, Vlastimil Babka wrote:
> > On 28.1.2016 16:55, Michal Hocko wrote:
> > > On Wed 27-01-16 19:28:57, Vladimir Davydov wrote:
> > >> When vmpressure is called for the entire subtree under pressure we
> > >> mistakenly use vmpressure->scanned instead of vmpressure->tree_scanned
> > >> when checking if vmpressure work is to be scheduled. This results in
> > >> suppressing all vmpressure events in the legacy cgroup hierarchy. Fix
> > >> it.
> > >>
> > >> Fixes: 8e8ae645249b ("mm: memcontrol: hook up vmpressure to socket pressure")
> > >> Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
> > >
> > > a = b += c made me scratch my head for a second but this looks correct
> >
> > Ugh, it's actually a = b += a
> >
> > While clever and compact, this will make scratch their head anyone looking at
> > the code in the future. Is it worth it?
>
> I'm just trying to be consistend with the !tree case, where we do
> exactly the same.

I stared suspiciously at it for a while, decided to let it go.
Possibly we can remove local `scanned' altogether. No matter, someone
will clean it all up sometime.