Re: [PATCH v2 1/2] erofs-utils: lib: don't abort on compression fallback

Gao Xiang <[email protected]> Tue, 23 Jun 2026 11:20:11 +0800
Newsgroups org.ozlabs.lists.linux-erofs
Message-ID <[email protected]>

On 2026/6/23 10:53, Yifan Zhao wrote:
> File-level compression fallback is control flow, not a real error.
> Return an erofs-specific status code for it instead of overloading
> -ENOSPC, which can also report real space failures.
> 
> Keep the global compression context reusable for that fallback while
> preserving the fatal state for real errors.
> 
> Fixes: a729584ef975 ("erofs-utils: mkfs: avoid hanging if fragment is on and tmpdir is full")
> Reported-by: Bastian Schmitz <[email protected]>
> Closes: https://github.com/erofs/erofs-utils/issues/50
> Assisted-by: Codex:GPT-5.5
> Signed-off-by: Yifan Zhao <[email protected]>
> ---
>   include/erofs/err.h |  1 +
>   lib/compress.c      | 10 +++++++---
>   lib/inode.c         |  6 +++---
>   3 files changed, 11 insertions(+), 6 deletions(-)
> 
> diff --git a/include/erofs/err.h b/include/erofs/err.h
> index 7dacc91..ef882c9 100644
> --- a/include/erofs/err.h
> +++ b/include/erofs/err.h
> @@ -29,6 +29,7 @@ static inline const char *erofs_strerror(int err)
>   }
>   
>   #define MAX_ERRNO (4095)
> +#define EROFS_ERRNO_COMPR_FALLBACK	(MAX_ERRNO + 1)

hmmm, the naming is not quite good, I will think out a
new name and manually change it.