This fixes some android build failures due to the missing permission when
checking the loop device. Until we get a better solution, let's ignore
the error with warnings.

Signed-off-by: Jaegeuk Kim <[email protected]>
---
 lib/libf2fs.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/lib/libf2fs.c b/lib/libf2fs.c
index d51e485361ee..1cfbf31a9c85 100644
--- a/lib/libf2fs.c
+++ b/lib/libf2fs.c
@@ -854,9 +854,15 @@ int f2fs_dev_is_umounted(char *path)
 
                        loop_fd = open(mnt->mnt_fsname, O_RDONLY);
                        if (loop_fd < 0) {
+                               /* non-root users have no permission */
+                               if (errno == EPERM || errno == EACCES) {
+                                       MSG(0, "Info: open %s failed errno:%d - 
be careful to overwrite a mounted loopback file.\n",
+                                                       mnt->mnt_fsname, errno);
+                                       return 0;
+                               }
                                MSG(0, "Info: open %s failed errno:%d\n",
-                                       mnt->mnt_fsname, errno);
-                               return -1;
+                                                       mnt->mnt_fsname, errno);
+                               return -errno;
                        }
 
                        err = ioctl(loop_fd, LOOP_GET_STATUS64, &loopinfo);
@@ -864,7 +870,7 @@ int f2fs_dev_is_umounted(char *path)
                        if (err < 0) {
                                MSG(0, "\tError: ioctl LOOP_GET_STATUS64 failed 
errno:%d!\n",
                                        errno);
-                               return -1;
+                               return -errno;
                        }
 
                        if (st_buf.st_dev == loopinfo.lo_device &&
-- 
2.44.0.278.ge034bb2e1d-goog



_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to