Re: [RFC PATCH 01/26] block: bdev: blockdev page cache is movable

From: Mel Gorman
Date: Fri Apr 21 2023 - 08:25:38 EST


On Tue, Apr 18, 2023 at 03:12:48PM -0400, Johannes Weiner wrote:
> While inspecting page blocks for the type of pages in them, I noticed
> a large number of blockdev cache in unmovable blocks. However, these
> pages are actually on the LRU, and their mapping has a .migrate_folio
> callback; they can be reclaimed and compacted as necessary.
>
> Put them into movable blocks, so they don't cause pollution, and
> subsequent proliferation, of unmovable blocks.
>
> Signed-off-by: Johannes Weiner <hannes@xxxxxxxxxxx>

Deserves to be split out and needs careful treatment. I don't recall exactly
but I believe I encountered a problem with these allocations in the very
distant past. Some of the allocations were movable and others weren't
or had very long lifetimes. Something like being superblock-related or
directory inodes being pinned for very long lengths of time. This is a
*long* time ago and the picture almost certainly has changed but it's
very possible that a high percentage, but not 100% of these allocations
are not movable in practice.

--
Mel Gorman
SUSE Labs