On 04/05, Chao Yu wrote:
> On 2023/3/31 0:49, Yangtao Li wrote:
> > +#ifdef CONFIG_F2FS_FS_LZ4HC
> > +   unsigned char level = F2FS_I(cc->inode)->i_compress_level;
> >     if (level)
> >             len = LZ4_compress_HC(cc->rbuf, cc->cbuf->cdata, cc->rlen,
> >                                     cc->clen, level, cc->private);
> >     else
> 
> [snip]
> 
> >   #endif
> 
> [snip]
> 
> > +           len = LZ4_compress_default(cc->rbuf, cc->cbuf->cdata, cc->rlen,
> 
> It's weired that whole else xxx; statement is split by #endif.
> 
> What about?
> 
>       unsigned char level = 0;
> 
> #if
> ...
> #endif
>       if (!level)
>               len = LZ4_compress_default()

I modified like this.

--- a/fs/f2fs/compress.c
+++ b/fs/f2fs/compress.c
@@ -266,17 +266,19 @@ static void lz4_destroy_compress_ctx(struct compress_ctx 
*cc)

 static int lz4_compress_pages(struct compress_ctx *cc)
 {
-       int len;
-#ifdef CONFIG_F2FS_FS_LZ4HC
+       int len = -EINVAL;
        unsigned char level = F2FS_I(cc->inode)->i_compress_level;

-       if (level)
+       if (!level)
+               len = LZ4_compress_default(cc->rbuf, cc->cbuf->cdata, cc->rlen,
+                                               cc->clen, cc->private);
+#ifdef CONFIG_F2FS_FS_LZ4HC
+       else
                len = LZ4_compress_HC(cc->rbuf, cc->cbuf->cdata, cc->rlen,
                                        cc->clen, level, cc->private);
-       else
 #endif
-               len = LZ4_compress_default(cc->rbuf, cc->cbuf->cdata, cc->rlen,
-                                               cc->clen, cc->private);
+       if (len < 0)
+               return len;
        if (!len)
                return -EAGAIN;

> 
> Thanks,
> 
> >                                             cc->clen, cc->private);
> >     if (!len)
> >             return -EAGAIN;


_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to