stat() can fail due to a lot of reasons, let f2fs_dev_is_umounted() detect such error and handle it correctly.
Signed-off-by: Chao Yu <yuch...@huawei.com> --- lib/libf2fs.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/libf2fs.c b/lib/libf2fs.c index c692bf2da635..6a1040feff32 100644 --- a/lib/libf2fs.c +++ b/lib/libf2fs.c @@ -713,7 +713,14 @@ int f2fs_dev_is_umounted(char *path) st_buf = malloc(sizeof(struct stat)); ASSERT(st_buf); - if (stat(path, st_buf) == 0 && S_ISBLK(st_buf->st_mode)) { + ret = stat(path, st_buf); + if (ret) { + MSG(0, "\tError: stat %s failed!\n", path); + free(st_buf); + return -1; + } + + if (S_ISBLK(st_buf->st_mode)) { int fd = open(path, O_RDONLY | O_EXCL); if (fd >= 0) { -- 2.18.0.rc1 _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel