Re: [PATCH v2] mm: shmem: skip swapcache for swapin of synchronous swap device
From: Matthew Wilcox
Date: Sun Jan 05 2025 - 23:07:55 EST
On Mon, Jan 06, 2025 at 11:46:04AM +0800, Baolin Wang wrote:
> On 2025/1/2 21:10, Matthew Wilcox wrote:
> > On Thu, Jan 02, 2025 at 04:40:17PM +0800, Baolin Wang wrote:
> > > With fast swap devices (such as zram), swapin latency is crucial to applications.
> > > For shmem swapin, similar to anonymous memory swapin, we can skip the swapcache
> > > operation to improve swapin latency.
> >
> > OK, but now we have more complexity. Why can't we always skip the
> > swapcache on swapin?
>
> Skipping swapcache is used to swap-in shmem large folios, avoiding the large
> folios being split. Meanwhile, since the IO latency of syncing swap devices
> is relatively small, it won't cause the IO latency amplification issue.
>
> But for async swap devices, if we swap-in the large folio one-time, I am
> afraid the IO latency can be amplified. And I remember we still haven't
> reached an agreement here[1], so let's step by step and start with the sync
> swap devices first.
Regardless of whether we choose to swap-in an order-0 or a large folio,
my point is that we should always do it to the pagecache rather than the
swap cache.