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
