Reviewed-by: Daeho Jeong <[email protected]> On Tue, Mar 5, 2024 at 12:50 PM Jaegeuk Kim <[email protected]> wrote: > > 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
_______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
