Re: [PATCH 11/13] iomap: make buffered writes work with RWF_UNCACHED

From: Jens Axboe
Date: Fri Nov 08 2024 - 14:26:46 EST


On 11/8/24 11:46 AM, Matthew Wilcox wrote:
> On Fri, Nov 08, 2024 at 10:43:34AM -0700, Jens Axboe wrote:
>> +++ b/fs/iomap/buffered-io.c
>> @@ -959,6 +959,8 @@ static loff_t iomap_write_iter(struct iomap_iter *iter, struct iov_iter *i)
>> }
>> if (iter->iomap.flags & IOMAP_F_STALE)
>> break;
>> + if (iter->flags & IOMAP_UNCACHED)
>> + folio_set_uncached(folio);
>
> This seems like it'd convert an existing page cache folio into being
> uncached? Is this just leftover from a previous version or is that a
> design decision you made?

I'll see if we can improve that. Currently both the read and write side
do drop whatever it touches. We could feasibly just have it drop
newly instantiated pages - iow, uncached just won't create new persistent
folios, but it'll happily use the ones that are there already.

--
Jens Axboe