From bb687ee6b6ec5bc889e565167aeec34e7bee324f Mon Sep 17 00:00:00 2001 From: Chunhai Guo Date: Mon, 1 Apr 2024 07:55:50 -0600 Subject: [PATCH] BACKPORT: erofs: rename utils.c to zutil.c Currently, utils.c is only useful if CONFIG_EROFS_FS_ZIP is on. So let's rename it to zutil.c as well as avoid its inclusion if CONFIG_EROFS_FS_ZIP is explicitly disabled. Signed-off-by: Chunhai Guo Reviewed-by: Gao Xiang Link: https://lore.kernel.org/r/20240401135550.2550043-1-guochunhai@vivo.com Signed-off-by: Gao Xiang Bug: 348591003 Change-Id: Iace477719fb803084955218a3e5ace74338f5ec8 (cherry picked from commit cacd5b04e24c74a813c694ec7b26a1a370b5d666) [Chunhai: Resolved minor conflict in fs/erofs/Makefile and fs/erofs/utils.c ] Signed-off-by: Chunhai Guo --- fs/erofs/Makefile | 4 ++-- fs/erofs/{utils.c => zutil.c} | 25 ++++++++++--------------- 2 files changed, 12 insertions(+), 17 deletions(-) rename fs/erofs/{utils.c => zutil.c} (96%) diff --git a/fs/erofs/Makefile b/fs/erofs/Makefile index a3a98fc3e481..41b371b5fece 100644 --- a/fs/erofs/Makefile +++ b/fs/erofs/Makefile @@ -1,8 +1,8 @@ # SPDX-License-Identifier: GPL-2.0-only obj-$(CONFIG_EROFS_FS) += erofs.o -erofs-objs := super.o inode.o data.o namei.o dir.o utils.o sysfs.o +erofs-objs := super.o inode.o data.o namei.o dir.o sysfs.o erofs-$(CONFIG_EROFS_FS_XATTR) += xattr.o -erofs-$(CONFIG_EROFS_FS_ZIP) += decompressor.o zmap.o zdata.o pcpubuf.o +erofs-$(CONFIG_EROFS_FS_ZIP) += decompressor.o zmap.o zdata.o pcpubuf.o zutil.o erofs-$(CONFIG_EROFS_FS_ZIP_LZMA) += decompressor_lzma.o erofs-$(CONFIG_EROFS_FS_ONDEMAND) += fscache.o diff --git a/fs/erofs/utils.c b/fs/erofs/zutil.c similarity index 96% rename from fs/erofs/utils.c rename to fs/erofs/zutil.c index 46627cb69abe..b76ea41e521d 100644 --- a/fs/erofs/utils.c +++ b/fs/erofs/zutil.c @@ -6,6 +6,14 @@ #include "internal.h" #include +static atomic_long_t erofs_global_shrink_cnt; /* for all mounted instances */ +/* protected by 'erofs_sb_list_lock' */ +static unsigned int shrinker_run_no; + +/* protects the mounted 'erofs_sb_list' */ +static DEFINE_SPINLOCK(erofs_sb_list_lock); +static LIST_HEAD(erofs_sb_list); + struct page *erofs_allocpage(struct page **pagepool, gfp_t gfp) { struct page *page = *pagepool; @@ -13,10 +21,9 @@ struct page *erofs_allocpage(struct page **pagepool, gfp_t gfp) if (page) { DBG_BUGON(page_ref_count(page) != 1); *pagepool = (struct page *)page_private(page); - } else { - page = alloc_page(gfp); + return page; } - return page; + return alloc_page(gfp); } void erofs_release_pages(struct page **pagepool) @@ -29,10 +36,6 @@ void erofs_release_pages(struct page **pagepool) } } -#ifdef CONFIG_EROFS_FS_ZIP -/* global shrink count (for all mounted EROFS instances) */ -static atomic_long_t erofs_global_shrink_cnt; - static int erofs_workgroup_get(struct erofs_workgroup *grp) { int o; @@ -181,13 +184,6 @@ static unsigned long erofs_shrink_workstation(struct erofs_sb_info *sbi, return freed; } -/* protected by 'erofs_sb_list_lock' */ -static unsigned int shrinker_run_no; - -/* protects the mounted 'erofs_sb_list' */ -static DEFINE_SPINLOCK(erofs_sb_list_lock); -static LIST_HEAD(erofs_sb_list); - void erofs_shrinker_register(struct super_block *sb) { struct erofs_sb_info *sbi = EROFS_SB(sb); @@ -289,4 +285,3 @@ void erofs_exit_shrinker(void) { unregister_shrinker(&erofs_shrinker_info); } -#endif /* !CONFIG_EROFS_FS_ZIP */