Re: [PATCH 2/3] mm: filemap: only do access activations on reads

From: Johannes Weiner
Date: Tue Apr 05 2016 - 13:51:15 EST


On Mon, Apr 04, 2016 at 05:39:47PM -0400, Rik van Riel wrote:
> As for hinting, I suspect it may make sense to differentiate
> between whole page and partial page writes, where partial
> page writes use FGP_ACCESSED, and whole page writes do not,
> under the assumption that if we write a partial page, there
> may be a higher chance that other parts of the page get
> accessed again for other writes (or reads).

The writeback cache should handle at least the multiple subpage writes
case.

What I find a little weird about counting accesses from partial writes
only is when a write covers a full page and then parts of the next. We
would cache only a small piece of what's likely one coherent chunk.

Or when a user writes out several pages in a loop of subpage chunks.

This will get even worse to program against when we start having page
cache transparently backed by pages of different sizes.

Because of that I think it'd be better to apply LRU aging decisions
based on type of access rather based on specific request sizes.