diff options
author | Gao Xiang <hsiangkao@redhat.com> | 2020-12-08 12:58:32 +0300 |
---|---|---|
committer | Gao Xiang <hsiangkao@redhat.com> | 2020-12-08 13:08:21 +0300 |
commit | 6aaa7b0664e6886f6154070edbc24435d6e1f86b (patch) | |
tree | e071fea60039165f7eacf8b8780979811b0f80bc /fs/erofs/decompressor.c | |
parent | a426ce9d6751cc8e709f031fa546900e4239f125 (diff) | |
download | linux-6aaa7b0664e6886f6154070edbc24435d6e1f86b.tar.xz |
erofs: get rid of magical Z_EROFS_MAPPING_STAGING
Previously, we played around with magical page->mapping for short-lived
temporary pages since we need to identify different types of pages in
the same pcluster but both invalidated and short-lived temporary pages
can have page->mapping == NULL. It was considered as safe because that
temporary pages are all non-LRU / non-movable pages.
This patch tends to use specific page->private to identify short-lived
pages instead so it won't rely on page->mapping anymore. Details are
described in "compress.h" as well.
Link: https://lore.kernel.org/r/20201208095834.3133565-1-hsiangkao@redhat.com
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Gao Xiang <hsiangkao@redhat.com>
Diffstat (limited to 'fs/erofs/decompressor.c')
-rw-r--r-- | fs/erofs/decompressor.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/erofs/decompressor.c b/fs/erofs/decompressor.c index cbadbf55c6c2..1cb1ffd10569 100644 --- a/fs/erofs/decompressor.c +++ b/fs/erofs/decompressor.c @@ -76,7 +76,7 @@ static int z_erofs_lz4_prepare_destpages(struct z_erofs_decompress_req *rq, victim = erofs_allocpage(pagepool, GFP_KERNEL); if (!victim) return -ENOMEM; - victim->mapping = Z_EROFS_MAPPING_STAGING; + set_page_private(victim, Z_EROFS_SHORTLIVED_PAGE); } rq->out[i] = victim; } |