summaryrefslogtreecommitdiff
path: root/include/linux/f2fs_fs.h
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2021-02-26 18:51:42 +0300
committerJaegeuk Kim <jaegeuk@kernel.org>2021-03-13 00:16:42 +0300
commit72f85881249e3a7403434631b9a9f934cdd1a83d (patch)
tree041aeec6e850716397585e53b1c95e2f7c20ee38 /include/linux/f2fs_fs.h
parent43f8c47ea7d59c7b2270835f1d7c4618a1ea27b6 (diff)
downloadlinux-72f85881249e3a7403434631b9a9f934cdd1a83d.tar.xz
f2fs: compress: Allow modular (de)compression algorithms
If F2FS_FS is modular, enabling the compressions options F2FS_FS_{LZ4,LZ4HZ,LZO,LZORLE,ZSTD} will make the (de)compression algorithms {LZ4,LZ4HC,LZO,ZSTD}_{,DE}COMPRESS builtin instead of modular, as the former depend on an intermediate boolean F2FS_FS_COMPRESSION, which in-turn depends on tristate F2FS_FS. Indeed, if a boolean symbol A depends directly on a tristate symbol B and selects another tristate symbol C: tristate B tristate C bool A depends on B select C and B is modular, then C will also be modular. However, if there is an intermediate boolean D in the dependency chain between A and B: tristate B tristate C bool D depends on B bool A depends on D select C then the modular state won't propagate from B to C, and C will be builtin instead of modular. As modular dependency propagation through intermediate symbols is obscure, fix this in a robust way by moving the selection of tristate (de)compression algorithms from the boolean compression options to the tristate main F2FS_FS option. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Reviewed-by: Chao Yu <yuchao0@huawei.com> Reviewed-by: Masahiro Yamada <masahiroy@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'include/linux/f2fs_fs.h')
0 files changed, 0 insertions, 0 deletions