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

Heiko Thiery
2020-06-16T09:45:46Z

From: Thomas Schaefer <thomas.schaefer@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@kontron.com>
[hthiery: slightly reword the commit message]
Signed-off-by: Heiko Thiery <heiko.thiery@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;
}

--
2.20.1