Re: [PATCH 1/2] btrfs: define compression levels statically

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 9.08.19 г. 17:55 ч., David Sterba wrote:
> The maximum and default levels do not change and can be defined
> directly. The set_level callback was a temporary solution and will be
> removed.
> 
> Signed-off-by: David Sterba <dsterba@xxxxxxxx>
> ---
>  fs/btrfs/compression.h | 4 ++++
>  fs/btrfs/lzo.c         | 2 ++
>  fs/btrfs/zlib.c        | 2 ++
>  fs/btrfs/zstd.c        | 2 ++
>  4 files changed, 10 insertions(+)
> 
> diff --git a/fs/btrfs/compression.h b/fs/btrfs/compression.h
> index 2035b8eb1290..07b2009dc63f 100644
> --- a/fs/btrfs/compression.h
> +++ b/fs/btrfs/compression.h
> @@ -162,6 +162,10 @@ struct btrfs_compress_op {
>  	 * if the level is out of bounds or the default if 0 is passed in.
>  	 */
>  	unsigned int (*set_level)(unsigned int level);
> +
> +	/* Maximum level supported by the compression algorithm */
> +	int max_level;
> +	int default_level;

can levels be negative? If not just define those as unsigned ints and in
the next patch it won't be necessary to use min_t but plain min.

>  };
>  
>  /* The heuristic workspaces are managed via the 0th workspace manager */
> diff --git a/fs/btrfs/lzo.c b/fs/btrfs/lzo.c
> index 579d53ae256f..adac6cb30d65 100644
> --- a/fs/btrfs/lzo.c
> +++ b/fs/btrfs/lzo.c
> @@ -523,4 +523,6 @@ const struct btrfs_compress_op btrfs_lzo_compress = {
>  	.decompress_bio		= lzo_decompress_bio,
>  	.decompress		= lzo_decompress,
>  	.set_level		= lzo_set_level,
> +	.max_level		= 1,
> +	.default_level		= 1,
>  };
> diff --git a/fs/btrfs/zlib.c b/fs/btrfs/zlib.c
> index b86b7ad6b900..03d6c3683bd9 100644
> --- a/fs/btrfs/zlib.c
> +++ b/fs/btrfs/zlib.c
> @@ -437,4 +437,6 @@ const struct btrfs_compress_op btrfs_zlib_compress = {
>  	.decompress_bio		= zlib_decompress_bio,
>  	.decompress		= zlib_decompress,
>  	.set_level              = zlib_set_level,
> +	.max_level		= 9,
> +	.default_level		= BTRFS_ZLIB_DEFAULT_LEVEL,
>  };
> diff --git a/fs/btrfs/zstd.c b/fs/btrfs/zstd.c
> index 3837ca180d52..b2b23a6a497d 100644
> --- a/fs/btrfs/zstd.c
> +++ b/fs/btrfs/zstd.c
> @@ -729,4 +729,6 @@ const struct btrfs_compress_op btrfs_zstd_compress = {
>  	.decompress_bio = zstd_decompress_bio,
>  	.decompress = zstd_decompress,
>  	.set_level = zstd_set_level,
> +	.max_level	= ZSTD_BTRFS_MAX_LEVEL,
> +	.default_level	= ZSTD_BTRFS_DEFAULT_LEVEL,
>  };
> 



[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux