[PATCH 3/7] erofs: move packed inode out of the compression part

Yue Hu zbestahu at gmail.com
Mon Apr 10 12:45:32 AEST 2023


On Fri,  7 Apr 2023 22:17:06 +0800
Jingbo Xu <jefflexu at linux.alibaba.com> wrote:

> packed inode could be used in more scenarios which are independent of
> compression in the future.
> 
> For example, packed inode could be used to keep extra long xattr
> prefixes with the help of following patches.
> 
> Signed-off-by: Jingbo Xu <jefflexu at linux.alibaba.com>

Reviewed-by: Yue Hu <huyue2 at coolpad.com>

> ---
>  fs/erofs/internal.h | 2 +-
>  fs/erofs/super.c    | 4 +---
>  2 files changed, 2 insertions(+), 4 deletions(-)
> 
> diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h
> index caea9dc1cd82..8b5168f94dd2 100644
> --- a/fs/erofs/internal.h
> +++ b/fs/erofs/internal.h
> @@ -134,8 +134,8 @@ struct erofs_sb_info {
>  	struct inode *managed_cache;
>  
>  	struct erofs_sb_lz4_info lz4;
> -	struct inode *packed_inode;
>  #endif	/* CONFIG_EROFS_FS_ZIP */
> +	struct inode *packed_inode;
>  	struct erofs_dev_context *devs;
>  	struct dax_device *dax_dev;
>  	u64 dax_part_off;
> diff --git a/fs/erofs/super.c b/fs/erofs/super.c
> index 325602820dc8..8f2f8433db61 100644
> --- a/fs/erofs/super.c
> +++ b/fs/erofs/super.c
> @@ -810,7 +810,6 @@ static int erofs_fc_fill_super(struct super_block *sb, struct fs_context *fc)
>  
>  	erofs_shrinker_register(sb);
>  	/* sb->s_umount is already locked, SB_ACTIVE and SB_BORN are not set */
> -#ifdef CONFIG_EROFS_FS_ZIP
>  	if (erofs_sb_has_fragments(sbi) && sbi->packed_nid) {
>  		sbi->packed_inode = erofs_iget(sb, sbi->packed_nid);
>  		if (IS_ERR(sbi->packed_inode)) {
> @@ -819,7 +818,6 @@ static int erofs_fc_fill_super(struct super_block *sb, struct fs_context *fc)
>  			return err;
>  		}
>  	}
> -#endif
>  	err = erofs_init_managed_cache(sb);
>  	if (err)
>  		return err;
> @@ -986,9 +984,9 @@ static void erofs_put_super(struct super_block *sb)
>  #ifdef CONFIG_EROFS_FS_ZIP
>  	iput(sbi->managed_cache);
>  	sbi->managed_cache = NULL;
> +#endif
>  	iput(sbi->packed_inode);
>  	sbi->packed_inode = NULL;
> -#endif
>  	erofs_free_dev_context(sbi->devs);
>  	sbi->devs = NULL;
>  	erofs_fscache_unregister_fs(sb);



More information about the Linux-erofs mailing list