Merge "libext2fs: avoid unnecessary stat(2) calls on mountpoints" am: 1cfa16f270 am: d08fb19bbb
Original change: https://android-review.googlesource.com/c/platform/external/e2fsprogs/+/1777845
Change-Id: I893264b0e40b15646a57fb0717fbc1ca52d37758
diff --git a/lib/ext2fs/ismounted.c b/lib/ext2fs/ismounted.c
index 46d330d..c9e6a9d 100644
--- a/lib/ext2fs/ismounted.c
+++ b/lib/ext2fs/ismounted.c
@@ -128,14 +128,14 @@
while ((mnt = getmntent (f)) != NULL) {
if (mnt->mnt_fsname[0] != '/')
continue;
- if (stat(mnt->mnt_dir, &st_buf) != 0)
- continue;
if (strcmp(file, mnt->mnt_fsname) == 0) {
+ if (stat(mnt->mnt_dir, &st_buf) != 0)
+ continue;
if (file_rdev && (file_rdev != st_buf.st_dev)) {
#ifdef DEBUG
printf("Bogus entry in %s! "
- "(%s does not exist)\n",
- mtab_file, mnt->mnt_dir);
+ "(%s is not mounted on %s)\n",
+ mtab_file, file, mnt->mnt_dir);
#endif /* DEBUG */
continue;
}