On Wed, Apr 02, 2025 at 09:45:44PM +0800, Wentao Liang wrote:
> In attempt_compress(), the return value of zlib_deflateInit2() needs to be
> checked. A proper implementation can be found in  pstore_compress().
> 
> Add an error check and return 0 immediately if the initialzation fails.
> 
> Fixes: 986e9842fb68 ("bcachefs: Compression levels")
> Cc: [email protected]
> Signed-off-by: Wentao Liang <[email protected]>

Applied

> ---
>  fs/bcachefs/compress.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/fs/bcachefs/compress.c b/fs/bcachefs/compress.c
> index f99ff1819597..5af37c40cef0 100644
> --- a/fs/bcachefs/compress.c
> +++ b/fs/bcachefs/compress.c
> @@ -365,13 +365,14 @@ static int attempt_compress(struct bch_fs *c,
>               };
>  
>               zlib_set_workspace(&strm, workspace);
> -             zlib_deflateInit2(&strm,
> +             if (zlib_deflateInit2(&strm,
>                                 compression.level
>                                 ? clamp_t(unsigned, compression.level,
>                                           Z_BEST_SPEED, Z_BEST_COMPRESSION)
>                                 : Z_DEFAULT_COMPRESSION,
>                                 Z_DEFLATED, -MAX_WBITS, DEF_MEM_LEVEL,
> -                               Z_DEFAULT_STRATEGY);
> +                               Z_DEFAULT_STRATEGY) != Z_OK)
> +                     return 0;
>  
>               if (zlib_deflate(&strm, Z_FINISH) != Z_STREAM_END)
>                       return 0;
> -- 
> 2.42.0.windows.2
> 

Reply via email to