On Fri, Nov 08, 2024 at 10:43:31AM -0700, Jens Axboe wrote: > +++ b/mm/swap.c > @@ -472,6 +472,8 @@ static void folio_inc_refs(struct folio *folio) > */ > void folio_mark_accessed(struct folio *folio) > { > + if (folio_test_uncached(folio)) > + return; > if (lru_gen_enabled()) { This feels like it might be a problem. If, eg, process A is doing uncached IO and process B comes along and, say, mmap()s it, I think we'll need to clear the uncached flag in order to have things work correctly. It's a performance problem, not a correctness problem.