* [PATCH] erofs: print the names of unsupported compression algorithms
@ 2025-12-18 3:18 Yuwen Chen
2025-12-18 3:25 ` Gao Xiang
0 siblings, 1 reply; 2+ messages in thread
From: Yuwen Chen @ 2025-12-18 3:18 UTC (permalink / raw)
To: xiang; +Cc: chao, huyue2, jefflexu, linux-erofs, linux-kernel, Yuwen Chen
After simplifying the implementation of z_erofs_parse_cfgs, the
names of unsupported algorithms can now be directly output.
Moreover, some unnecessary additional judgments can be removed.
Signed-off-by: Yuwen Chen <ywen.chen@foxmail.com>
---
fs/erofs/decompressor.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/fs/erofs/decompressor.c b/fs/erofs/decompressor.c
index be1e19b620523..866bd9158615b 100644
--- a/fs/erofs/decompressor.c
+++ b/fs/erofs/decompressor.c
@@ -385,21 +385,22 @@ const struct z_erofs_decompressor erofs_decompressors[] = {
.decompress = z_erofs_lz4_decompress,
.name = "lz4"
},
-#ifdef CONFIG_EROFS_FS_ZIP_LZMA
[Z_EROFS_COMPRESSION_LZMA] = {
+#ifdef CONFIG_EROFS_FS_ZIP_LZMA
.config = z_erofs_load_lzma_config,
.decompress = z_erofs_lzma_decompress,
+#endif
.name = "lzma"
},
-#endif
-#ifdef CONFIG_EROFS_FS_ZIP_DEFLATE
[Z_EROFS_COMPRESSION_DEFLATE] = {
+#ifdef CONFIG_EROFS_FS_ZIP_DEFLATE
.config = z_erofs_load_deflate_config,
.decompress = z_erofs_deflate_decompress,
+#endif
.name = "deflate"
},
-#endif
};
+static_assert(Z_EROFS_COMPRESSION_RUNTIME_MAX == ARRAY_SIZE(erofs_decompressors));
int z_erofs_parse_cfgs(struct super_block *sb, struct erofs_super_block *dsb)
{
@@ -433,10 +434,9 @@ int z_erofs_parse_cfgs(struct super_block *sb, struct erofs_super_block *dsb)
break;
}
- if (alg >= ARRAY_SIZE(erofs_decompressors) ||
- !erofs_decompressors[alg].config) {
- erofs_err(sb, "algorithm %ld isn't enabled on this kernel",
- alg);
+ if (!erofs_decompressors[alg].config) {
+ erofs_err(sb, "algorithm %s isn't enabled on this kernel",
+ erofs_decompressors[alg].name);
ret = -EOPNOTSUPP;
} else {
ret = erofs_decompressors[alg].config(sb,
--
2.34.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] erofs: print the names of unsupported compression algorithms
2025-12-18 3:18 [PATCH] erofs: print the names of unsupported compression algorithms Yuwen Chen
@ 2025-12-18 3:25 ` Gao Xiang
0 siblings, 0 replies; 2+ messages in thread
From: Gao Xiang @ 2025-12-18 3:25 UTC (permalink / raw)
To: Yuwen Chen, xiang; +Cc: chao, huyue2, jefflexu, linux-erofs, linux-kernel
On 2025/12/18 11:18, Yuwen Chen wrote:
> After simplifying the implementation of z_erofs_parse_cfgs, the
> names of unsupported algorithms can now be directly output.
> Moreover, some unnecessary additional judgments can be removed.
>
> Signed-off-by: Yuwen Chen <ywen.chen@foxmail.com>
It seems that you're working on outdated codebase.
There is no erofs_decompressors at all.
Thanks,
Gao Xiang
> ---
> fs/erofs/decompressor.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/fs/erofs/decompressor.c b/fs/erofs/decompressor.c
> index be1e19b620523..866bd9158615b 100644
> --- a/fs/erofs/decompressor.c
> +++ b/fs/erofs/decompressor.c
> @@ -385,21 +385,22 @@ const struct z_erofs_decompressor erofs_decompressors[] = {
> .decompress = z_erofs_lz4_decompress,
> .name = "lz4"
> },
> -#ifdef CONFIG_EROFS_FS_ZIP_LZMA
> [Z_EROFS_COMPRESSION_LZMA] = {
> +#ifdef CONFIG_EROFS_FS_ZIP_LZMA
> .config = z_erofs_load_lzma_config,
> .decompress = z_erofs_lzma_decompress,
> +#endif
> .name = "lzma"
> },
> -#endif
> -#ifdef CONFIG_EROFS_FS_ZIP_DEFLATE
> [Z_EROFS_COMPRESSION_DEFLATE] = {
> +#ifdef CONFIG_EROFS_FS_ZIP_DEFLATE
> .config = z_erofs_load_deflate_config,
> .decompress = z_erofs_deflate_decompress,
> +#endif
> .name = "deflate"
> },
> -#endif
> };
> +static_assert(Z_EROFS_COMPRESSION_RUNTIME_MAX == ARRAY_SIZE(erofs_decompressors));
>
> int z_erofs_parse_cfgs(struct super_block *sb, struct erofs_super_block *dsb)
> {
> @@ -433,10 +434,9 @@ int z_erofs_parse_cfgs(struct super_block *sb, struct erofs_super_block *dsb)
> break;
> }
>
> - if (alg >= ARRAY_SIZE(erofs_decompressors) ||
> - !erofs_decompressors[alg].config) {
> - erofs_err(sb, "algorithm %ld isn't enabled on this kernel",
> - alg);
> + if (!erofs_decompressors[alg].config) {
> + erofs_err(sb, "algorithm %s isn't enabled on this kernel",
> + erofs_decompressors[alg].name);
> ret = -EOPNOTSUPP;
> } else {
> ret = erofs_decompressors[alg].config(sb,
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-12-18 3:25 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-12-18 3:18 [PATCH] erofs: print the names of unsupported compression algorithms Yuwen Chen
2025-12-18 3:25 ` Gao Xiang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®