[PATCH 1/1] spl: fix ext4fs_mount return code handling

Tom Rini trini at konsulko.com
Tue Jun 16 17:29:43 CEST 2020


On Tue, Jun 16, 2020 at 01:59:03PM +0200, Heiko Thiery wrote:

> From: Thomas Schaefer <thomas.schaefer at kontron.com>
> 
> - Despite other ext4 filesystem functions, ext4fs_mount returns
>   0 in case of error.
> - This leads to u-boot crash in case that an SD card
>   with valid partition table but without ext4 filesystem created
>   in a partition is found on SD card.
> - Fix this by returning a proper error code of '-1' from spl_load_image_ext
>   function in case of ext4fs_mount error.
> 
> Signed-off-by: Thomas Schaefer <thomas.schaefer at kontron.com>
> [hthiery: slightly reword the commit message]
> Signed-off-by: Heiko Thiery <heiko.thiery at gmail.com>
> ---
>  common/spl/spl_ext.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/common/spl/spl_ext.c b/common/spl/spl_ext.c
> index 3898041d10..c8d137ed98 100644
> --- a/common/spl/spl_ext.c
> +++ b/common/spl/spl_ext.c
> @@ -32,6 +32,7 @@ int spl_load_image_ext(struct spl_image_info *spl_image,
>  #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
>  		printf("%s: ext4fs mount err - %d\n", __func__, err);
>  #endif
> +		err = -1; /* ext4fs_mount returns 0 in case of error! */
>  		goto end;
>  	}

Looking over the code, we should return -1 directly here, goto end isn't
going to provide more useful information as we don't have a "real" error
code to tell the user.  With that change please add:

Reviewed-by: Tom Rini <trini at konsulko.com>

and post v2, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200616/6eac488f/attachment.sig>


More information about the U-Boot mailing list