Re: [f2fs-dev] [PATCH] f2fs: compress: Allow modular (de)compression algorithms

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

 



Hi Geert,

On 2021/2/23 15:42, Geert Uytterhoeven wrote:
I checked the code in menu_finalize(), and this seems to work like this.

I discussed the oddity of the select behavior before
(https://lore.kernel.org/linux-kbuild/e1a6228d-1341-6264-d97a-e2bd52a65c82@xxxxxxxxxxxxx/),
but I was not confident about what the right direction was.


Anyway, the behavior is obscure from the current code.

If you want to make this more robust,
you can write as follows:

config F2FS_FS
         tristate "F2FS filesystem support"
         depends on BLOCK
         select NLS
         select CRYPTO
         select CRYPTO_CRC32
         select F2FS_FS_XATTR if FS_ENCRYPTION
         select FS_ENCRYPTION_ALGS if FS_ENCRYPTION
         select LZO_COMPRESS if F2FS_FS_LZO
         select LZO_DECOMPRESS if F2FS_FS_LZO
         select LZ4_COMPRESS if F2FS_FS_LZ4
         select LZ4_DECOMPRESS if F2FS_FS_LZ4
         select LZ4HC_COMPRESS if F2FS_FS_LZ4HC
         select ZSTD_COMPRESS if F2FS_FS_ZSTD
         select ZSTD_DECOMPRESS if F2FS_FS_ZSTD

The code is a bit clumsy, but it is clear
that the module (F2FS_FS) is selecting the
compress/decompress libraries.
Actually the above is what I tried first ;-)  Works fine.

Then I started to look for similar cases in other file systems (e.g.
EROFS_FS_ZIP), and discovered the issue doesn't happen there, which
sparked my investigation.  So I settled on the direct dependency,
because it keeps all compression-related logic together.

It looks above way is more explicit, how about using your previous implementation?

Thank,


Gr{oetje,eeting}s,



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux