Skip to content

Commit 3d0f560

Browse files
kparasurakpm00
authored andcommitted
mm: zswap: modify zswap_compress() to accept a page instead of a folio
For zswap_store() to be able to store a large folio by compressing it one page at a time, zswap_compress() needs to accept a page as input. This will allow us to iterate through each page in the folio in zswap_store(), compress it and store it in the zpool. Link: https://lkml.kernel.org/r/20241001053222.6944-3-kanchana.p.sridhar@intel.com Signed-off-by: Kanchana P Sridhar <kanchana.p.sridhar@intel.com> Reviewed-by: Nhat Pham <nphamcs@gmail.com> Reviewed-by: Chengming Zhou <chengming.zhou@linux.dev> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Acked-by: Yosry Ahmed <yosryahmed@google.com> Cc: "Huang, Ying" <ying.huang@intel.com> Cc: Matthew Wilcox <willy@infradead.org> Cc: Ryan Roberts <ryan.roberts@arm.com> Cc: Shakeel Butt <shakeel.butt@linux.dev> Cc: Usama Arif <usamaarif642@gmail.com> Cc: Wajdi Feghali <wajdi.k.feghali@intel.com> Cc: "Zou, Nanhai" <nanhai.zou@intel.com> Cc: Barry Song <21cnbao@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
1 parent 69bad21 commit 3d0f560

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

mm/zswap.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -875,7 +875,7 @@ static int zswap_cpu_comp_dead(unsigned int cpu, struct hlist_node *node)
875875
return 0;
876876
}
877877

878-
static bool zswap_compress(struct folio *folio, struct zswap_entry *entry)
878+
static bool zswap_compress(struct page *page, struct zswap_entry *entry)
879879
{
880880
struct crypto_acomp_ctx *acomp_ctx;
881881
struct scatterlist input, output;
@@ -893,7 +893,7 @@ static bool zswap_compress(struct folio *folio, struct zswap_entry *entry)
893893

894894
dst = acomp_ctx->buffer;
895895
sg_init_table(&input, 1);
896-
sg_set_folio(&input, folio, PAGE_SIZE, 0);
896+
sg_set_page(&input, page, PAGE_SIZE, 0);
897897

898898
/*
899899
* We need PAGE_SIZE * 2 here since there maybe over-compression case,
@@ -1457,7 +1457,7 @@ bool zswap_store(struct folio *folio)
14571457
mem_cgroup_put(memcg);
14581458
}
14591459

1460-
if (!zswap_compress(folio, entry))
1460+
if (!zswap_compress(&folio->page, entry))
14611461
goto put_pool;
14621462

14631463
entry->swpentry = swp;

0 commit comments

Comments
 (0)