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.