zswap: make zswap_store() take a folio
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Sat, 15 Jul 2023 04:23:40 +0000 (05:23 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 21 Aug 2023 20:37:26 +0000 (13:37 -0700)
commit34f4c198bfbe86612c368eb122002787acecaa93
tree8960b9d5118a738e5dac62b632e68f5266b1d807
parent42c06a0e8ebe95b81e5fb41c6556ff22d9255b0c
zswap: make zswap_store() take a folio

Patch series "Followup folio conversions for zswap".

With frontswap killed, it's worth converting the zswap_load() and
zswap_store() functions to take a folio instead of a page pointer.  They
aren't converted to support large folios, but there are a lot of
unnecessary calls to compound_head() that are removed by these patches.

This patch (of 4):

Only convert a few easy parts of this function to use the folio passed in;
convert back to struct page for the majority of it.  This does remove a
few hidden calls to compound_head().

Link: https://lkml.kernel.org/r/20230715042343.434588-1-willy@infradead.org
Link: https://lkml.kernel.org/r/20230715042343.434588-3-willy@infradead.org
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Domenico Cerasuolo <cerasuolodomenico@gmail.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Nhat Pham <nphamcs@gmail.com>
Cc: Vitaly Wool <vitaly.wool@konsulko.com>
Cc: Yosry Ahmed <yosryahmed@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/zswap.h
mm/page_io.c
mm/zswap.c