Re: [PATCH 0/3] mm: support splitting mappingless swapcache folios

"Zi Yan" <[email protected]>
Newsgroups gmane.linux.kernel,gmane.linux.kernel.mm
Message-ID <[email protected]>
On Fri Aug 7, 2026 at 5:22 PM EDT, Kairui Song wrote:
> On Fri, Aug 07, 2026 at 10:18:05AM +0800, Zi Yan wrote:
>> On Wed Aug 5, 2026 at 11:54 AM EDT, Kairui Song wrote:
>> > On Wed, Aug 05, 2026 at 08:03:33AM +0800, Zi Yan wrote:
>> >> On 5 Aug 2026, at 7:18, Shivam Kalra via B4 Relay wrote:
>> >> 
>> >> > Large shmem folios lose their address-space mapping when they are written
>> >> > to swap, but remain valid members of the swap cache. Folios read from swap
>> >> > but not yet associated with an anon_vma can have the same mappingless
>> >> > swapcache state. folio_check_splittable() currently mistakes both cases for
>> >> > truncation and rejects the split with -EBUSY.
>> >> >
>> >> > Implement the longstanding TODO for this state. Allow mappingless
>> >> > swapcache folios to use the existing uniform order-0 swapcache split path,
>> >> > while continuing to reject truly truncated folios and unsupported
>> >> > higher-order or non-uniform swapcache splits.
>> >> 
>> >> Thank you for your patches.
>> >> 
>> >> As Kairui (cc’d) mentioned in [1] (see “A bit more details on this”),
>> >> we might not need to implement this split. I will let Kairui to decide
>> >> how we should deal with this patchset.
>> >> 
>> >> [1] https://lore.kernel.org/all/CAMgjq7CHDG8JhesSPMkn1kzG8jKb0BXO756BvxMQC_MCn2eTyA@mail.gmail.com/
>> >
>> > Thanks for the CC, this is actually not hard to implement as shown by
>> > Shivam, I just found the code more and more hard to follow and fragile
>> > as we add more logic to it. And we don't have to reject higher order
>> > split either which can be seen easily if the code is cleaner.
>> >
>> > Personally I think doing some cleanup first is better, I haven't post any
>> > code as right now there doesn't seem to be much user of this. It will be
>> > needed if more clean THP swapcache begin to show up due to things like
>> > THP readahead for swap, which isn't here yet. I think I can send an RFC
>> > tomorrow just for reference. I'm fine if we prefer to remove that TODO
>> > using this smaller change first :)
>> 
>> Thanks. Can you also help review this patchset? The changes looks good
>> to me but I am not sure if I get all the details about swapcache handling.
>> 
>> -- 
>> Best Regards,
>> Yan, Zi
>
> Hello,
>
> Thanks for the reminder, I got a bit busy so delayed for a day on that
> RFC.
>
> For this series I think it's functionally fine, just the split logic is
> a bit complex to follow and we still have restriction on swap cache
> for order 0 uniform split only. I'll have a closer look later. Also

I agree. I wonder if it is possible that a shmem in swapcache could
enter non uniform split, folio_split(). With Patch 1,
folio_check_splittable() will return -EINVAL, causing a WARN.

Hi Shivam,

Can you check the above issue? If it is possible, we want to avoid it.

> let me know how you think about that RFC.

Sure, will take a look.


-- 
Best Regards,
Yan, Zi
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.