Re: [PATCH -mm v9 7/8] proc: export idle flag via kpageflags

Andres Lagar-Cavilla
2015-07-22T20:46:21Z

[-- Attachment #1: Type: text/plain, Size: 1432 bytes --]

In page_referenced_one:

+ if (referenced)
+ clear_page_idle(page);

Andres

On Wed, Jul 22, 2015 at 12:44 PM, Andrew Morton <akpm@linux-foundation.org>
wrote:

> On Wed, 22 Jul 2015 19:25:28 +0300 Vladimir Davydov <
> vdavydov@parallels.com> wrote:
>
> > On Tue, Jul 21, 2015 at 04:35:00PM -0700, Andrew Morton wrote:
> > > On Sun, 19 Jul 2015 15:31:16 +0300 Vladimir Davydov <
> vdavydov@parallels.com> wrote:
> > >
> > > > As noted by Minchan, a benefit of reading idle flag from
> > > > /proc/kpageflags is that one can easily filter dirty and/or
> unevictable
> > > > pages while estimating the size of unused memory.
> > > >
> > > > Note that idle flag read from /proc/kpageflags may be stale in case
> the
> > > > page was accessed via a PTE, because it would be too costly to
> iterate
> > > > over all page mappings on each /proc/kpageflags read to provide an
> > > > up-to-date value. To make sure the flag is up-to-date one has to read
> > > > /proc/kpageidle first.
> > >
> > > Is there any value in teaching the regular old page scanner to update
> > > these flags? If it's doing an rmap scan anyway...
> >
> > I don't understand what you mean by "regular old page scanner". Could
> > you please elaborate?
>
> Whenever kswapd or direct reclaim perform an rmap scan, take that as an
> opportunity to also update PageIdle().
>
>

--
Andres Lagar-Cavilla | Google Kernel Team | andreslc@google.com

[-- Attachment #2: Type: text/html, Size: 3122 bytes --]